gpt4 book ai didi

javascript - 数组的对象键。特殊的方法

转载 作者:行者123 更新时间:2023-11-29 17:53:14 25 4
gpt4 key购买 nike

假设,我们有一个对象

var obj = { name:'Alex', password:'12345' };

我知道我可以获得对象键的数组如下:

var arr = [];
for(i in obj) { arr.push(i) }; // arr is equal to [name, password]

var arr = Object.keys(obj); // arr is equal to [name, password]

但是今天我看到了这段代码:

var arr = [], i = 0;
for (arr[i++] in obj); // arr is also equal to [name, password]

这对我来说毫无意义...我对 JS 很陌生。谁能解释一下它是如何工作的?

最佳答案

这真是一段聪明的代码。

var arr = [], i = 0;
for (arr[i++] in obj);

你知道 for .. in 循环中发生了什么吗?按照这个:

for (a in obj) {
// every loop, a will have one of the key right?
}

从技术上讲,这意味着每个循环:

loop 1:
a = obj's key 1.
loop 2:
a = obj's key 2.
// and so on...

现在,arr 是一个数组。我们有 i0 作为它的值(value)。

loop 1:
a[i++] = obj's key 1. // is same as
a[0] = obj's key 1 and increment i
// and so on...

关于javascript - 数组的对象键。特殊的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41444744/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com