在课堂上,老师无法解释为什么推文(i)失败,推文[i]有效:
var tweets=["hi","who","when","where","bye"];
alert("start");
for (var i=0; i < tweets.length; i++) {
alert(tweets[i]);
}
alert("finish");
答案 0 :(得分:2)
括号用于函数,因此array()
将是一个名为array
的函数。方括号用于数组,因此array[]
将是一个数组。 array[0]
是数组中的第一个条目,array(1)
将1
作为参数发送给名为array
的函数。
停止上课,老师不能解释这么简单的事情。他们显然不是程序员。
答案 1 :(得分:1)
推文(i)在此代码段中失败的原因是因为,当您说tweets(i)
时,javascript会查看它并说&#34;哦,代码要我去找一个名为tweets的函数使用名为i。&#34;
当javascript看到tweets[i]
时,它会说&#34;哦,这不是一个功能。代码希望我在数组中找到number-i的位置并将其存储在那里。
简而言之,tweets(i)
无效的原因是因为您告诉它提醒您尚未定义的功能。
答案 2 :(得分:0)
()
是方法调用运算符,[x]是成员访问运算符。由于数组不是函数(例如typeof array !== 'function'
),因此您只能在数组上使用成员访问运算符。
注意:强>
e.g。
var func = function() { return 'hello'; };
func.world = 'earth'
console.log(func());
console.log(func['world'])
console.log(func.world)