来自Flanagan的书中的代码:
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 ]
为什么需要首先将密钥[i]存储在一个关键变量中,以便在刚刚之后访问该行的属性VALUES?为什么我们不能只放置值[i] = o [keys](返回undefined undefined)? “key”是一个任意变量名,我没有得到与o [key]建立o VALUES对应关系的魔力吗?
答案 0 :(得分:0)
为了从o
中提取值,我们需要值1
和4
,这些值存储在keys
变量中,因此为了提取这些值我们需要从0
开始循环它的值,尝试逐步查看
答案 1 :(得分:0)
Keys是获取密钥以获取值所需的数组,因此首先获取密钥并在密钥数组中搜索