拼接混乱

时间:2014-12-09 15:41:57

标签: javascript

我一直在浏览rot.js教程located here,并且我已经理解了大多数示例。

但是,我对一行代码感到困惑,我希望有人可以解释一下发生了什么。

这是在页面底部的Game._generateBoxes功能中:

var key = freeCells.splice(index, 1)[0];

我了解它从index数组中删除了freeCells位置中的一个元素,并将其分配给key。我不明白[0]最后在做什么。我尝试删除它,它似乎正常运行。这是完成了什么?

1 个答案:

答案 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();