为什么在数字上调用toString时却没有像典型的函数那样被调用。我期望var num = 5; toString(num);,但是它像var num = 5; num.toString();一样完成。为什么用句点在数字上调用函数而不是提供数字作为参数?我知道句点用于引用对象的属性,但是我看不到它如何适用于这种情况。抱歉,这是一个简单的问题,但是我是编程新手,我真的想在继续之前理解该语言。

最佳答案

在JavaScript中,.用于访问对象的属性。在这种情况下,数字具有toString属性,您可以调用它。

var num = 5;
num.toString //function toString() { [native code] }
num.toString() //"5"


函数toString之前没有任何内容,实际上是window对象的属性,它等效于以下内容:

window.toString //function toString() { [native code] }

07-24 17:34
查看更多