Second bind
الأهمية: 5
Can we change this
by additional binding?
What will be the output?
function
f
(
)
{
alert
(
this
.
name)
;
}
f =
f
.
bind
(
{
name
:
"John"
}
)
.
bind
(
{
name
:
"Ann"
}
)
;
f
(
)
;
The answer: John.
function
f
(
)
{
alert
(
this
.
name)
;
}
f =
f
.
bind
(
{
name
:
"John"
}
)
.
bind
(
{
name
:
"Pete"
}
)
;
f
(
)
;
// John
The exotic bound function object returned by f.bind(...)
remembers the context (and arguments if provided) only at creation time.
A function cannot be re-bound.