0

关于弗拉纳根书中的这段代码:

var o = {x:1, y:4};
var keys = Object.keys(o);
var values = [];

console.log(keys); //[ 'x', 'y' ]

for (var i = 0; i < keys.length; i++) {
  var key = keys[i];
  values[i] = o[key];
}

console.log(values); //[ 1, 4 ]

为什么需要首先将 keys[i] 存储在 key 变量中,以便在 o 之后的行上访问属性 VALUES ?为什么我们不能只放 values[i] = o[keys] (返回 undefined undefined)?“key”是一个任意变量名,我不明白它通过 o[key] 与 o VALUES 建立对应关系的魔力吗?

4

2 回答 2

0

为了从中提取一个值o,我们需要这些值1,并且4这些值存储在keys变量中,因此为了提取这些值,我们需要从 开始循环它0,尝试逐步查看它

于 2013-10-10T08:37:49.203 回答
0

Keys是你需要在keys中获取key来获取值的数组,所以先取key并在keys数组中搜索

于 2013-10-10T08:37:50.157 回答