为什么for ... in语句返回方法和属性?

时间:2016-07-28 11:53:36

标签: javascript

MDN所述,for ... in语句可以访问与对象相关的所有属性(和值)。

我不确定为什么这个语句也列出了这个方法:如果我在document对象上循环,我不仅会获得与它相关的属性列表,还会得到诸如prompt()或focus之类的方法()

为什么这些方法在与for ... in循环相关的所有文档中都被命名为“属性”?

2 个答案:

答案 0 :(得分:2)

因为方法也是属性,只有function的类型。

亲眼看看:

for (var prop in document) {
    console.log("document." + prop + " = " + document[prop], typeof(document[prop]));
}

答案 1 :(得分:1)

请检查此链接,我认为它会有所帮助:https://msdn.microsoft.com/en-us/library/ms229054(v=vs.100).aspx ...