我是无意中这样做的...
var numbers = [1, 2, 3, 4];
numbers.push[5];
为什么没有错误信息?
push 需要圆括号而不是方括号。这只是一个简单的打字错误。我没有注意到自己在做什么...但是为什么没有出现错误信息?
据我所知,数字数组没有被修改过。它什么也没做...
我是无意中这样做的...
var numbers = [1, 2, 3, 4];
numbers.push[5];
为什么没有错误信息?
push 需要圆括号而不是方括号。这只是一个简单的打字错误。我没有注意到自己在做什么...但是为什么没有出现错误信息?
据我所知,数字数组没有被修改过。它什么也没做...
numbers.push
只是一个函数,但你企图从它中查找位于 key 为 5
的属性,这会导致其结果为 undefined
。
function test() {
console.log("test");
}
// test[5] evaluates to `undefined` and does nothing
console.log(test[5]);
// We can even manually set this without messing up the function
test[5] = "foo";
// outputs "foo"
console.log(test[5]);
// outputs our expected value "test"
test();
undefined
- 任何属性(在javascript中函数只是属性)都可以具有属性... - Jaromanda Xpush
的属性上的名为5
的属性。那里没有语法错误,只是逻辑上的错误。 - Patrick Evans