Javascript:为什么我可以在不提及原型的情况下访问Function.prototype.call?
Javascript: Why am I able to access Function.prototype.call without mentioning the prototype?
这里有一个片段来解释我的问题:
+function(str) {
return str.replace(/^[a-z]|\s[a-z]/g,
Function.call.bind(String.prototype.toUpperCase));
}('foo bar baz.'); //Returns Foo Bar Baz.
Function.call
有效,但 String.toUpperCase
无效。我必须改写 String.prototype.toUpperCase
.
Function()
构造函数本身就是一个函数。因此,它继承自与任何其他函数相同的原型对象。
String()
的实例继承自原型,但 String()
构造函数 不是 String()
的实例。它也是一个函数。
这里有一个片段来解释我的问题:
+function(str) {
return str.replace(/^[a-z]|\s[a-z]/g,
Function.call.bind(String.prototype.toUpperCase));
}('foo bar baz.'); //Returns Foo Bar Baz.
Function.call
有效,但 String.toUpperCase
无效。我必须改写 String.prototype.toUpperCase
.
Function()
构造函数本身就是一个函数。因此,它继承自与任何其他函数相同的原型对象。
String()
的实例继承自原型,但 String()
构造函数 不是 String()
的实例。它也是一个函数。