我一直在浏览rot.js教程located here,并且我已经理解了大多数示例。
但是,我对一行代码感到困惑,我希望有人可以解释一下发生了什么。
这是在页面底部的Game._generateBoxes
功能中:
var key = freeCells.splice(index, 1)[0];
我了解它从index
数组中删除了freeCells
位置中的一个元素,并将其分配给key
。我不明白[0]
最后在做什么。我尝试删除它,它似乎正常运行。这是完成了什么?
答案 0 :(得分:2)
var key = freeCells.splice(index, 1);
...将一个成员分配给key
。
var key = freeCells.splice(index, 1)[0];
...指定上述数组成员的值,然后丢弃该数组。
var index = 1;
function one () {
var freeCells = ['a', 'b', 'c']
var key = freeCells.splice(index, 1)[0];
alert(typeof key);
}
function two () {
var freeCells = ['a', 'b', 'c']
var key = freeCells.splice(index, 1);
alert(typeof key);
}
one(); two();