JavaScript 函数bind() 方法
JavaScript 的 Function bind() 方法用于创建一个新的函数。当函数被调用时,它具有自己的 this 关键字,该关键字设置为提供的值,并带有给定的参数序列。
语法
function.bind(thisArg [, arg1[, arg2[, ...]]]
参数
thisArg - 传递给目标函数的this值。
arg1,arg2,….,argn - 表示函数的参数。
返回值
它返回给定函数的副本,同时提供this值和初始参数。
JavaScript Function bind() 方法示例
示例1
让我们看一个bind()方法的简单示例。
<script>
var website = {
name: "Javatpoint",
getName: function() {
return this.name;
}
}
var unboundGetName = website.getName;
var boundGetName = unboundGetName.bind(website);
document.writeln(boundGetName());
</script>
输出:
Javatpoint
示例2
让我们看一个bind()方法的示例。
<script>
// Here, this refers to global "window" object
this.name = "Oracle";
var website = {
name: "Javatpoint",
getName: function() { return this.name; }
};
document.writeln(website.getName()); // Javatpoint
//It invokes at global scope
var retrieveName = website.getName;
document.writeln(retrieveName()); //Oracle
var boundGetName = retrieveName.bind(website);
document.writeln(boundGetName()); // Javatpoint
</script>
输出:
Javatpoint Oracle Javatpoint