【发布时间】:2015-09-09 13:05:23
【问题描述】:
我知道这里有很多 EloqJS 问题,但我还没有看到有人问过这个问题,这让我陷入了困境。我很好奇对象条目中的key squirrel (squirrel: squirrel) 是如何不被这段代码中函数传递的参数替换的:
function addEntry(squirrel) {
var entry = {events: [], squirrel: squirrel};
for (var i = 1; i < arguments.length; i++)
entry.events.push(arguments[i]);
journal.push(entry);
}
addEntry(true, "work", "touched tree", "pizza",
"running", "television");
我希望它进入 {events: [], true: true},但这不是它返回的内容。我在这里显然错过了什么?原代码http://eloquentjavascript.net/04_data.html#arguments_object
【问题讨论】:
-
您不能使用对象文字符号将变量传递到对象键中,这就是原因。为此,它应该是 entry[squirrel] = squirrel。
标签: javascript arrays variables arguments