gpt4 book ai didi

javascript for ... in循环请解释

转载 作者:搜寻专家 更新时间:2023-11-01 05:12:29 26 4
gpt4 key购买 nike

我的第一个问题在这里,需要帮助理解 JavaScript 中的 for in 循环。

当我运行以下代码时,我从警报函数中得到“undefined”:

var o = {
a: "property 1",
b: "property 2",
c: "property 3",
d: "property 4"
}

for (p in o) {
alert(o.p);
}

但如果我将 . 更改为 [ ](即 alert(o[p])),警报将返回属性(property)值(value)符合预期。

为什么我不能使用 . 访问对象属性?

最佳答案

假设您有这个对象:

var o = {
a: "property 1",
b: "property 2",
c: "property 3",
d: "property 4",
p: "property 5"
}

并运行以下命令:

for (p in o) {
console.log(o.p);
}

结果将是:

property 5
property 5
property 5
property 5
property 5

因为 o.p 意味着你想获得名为 p 的属性的值。

与您的示例类似,属性 p 未在您的对象中定义。

如果要通过字符串获取属性的值,则必须使用[]表示法。

关于javascript for ... in循环请解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18495567/

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