gpt4 book ai didi

javascript - nextProps 键虽然有内容但神秘地无法访问

转载 作者:行者123 更新时间:2023-11-28 05:04:58 24 4
gpt4 key购买 nike

我在react-redux应用程序中的componentWillReceiveProps(nextProps)中

console.log("Debug NextProps: ",nextProps.variantCategories);
console.log("Debug NextProps: ",Object.keys(nextProps.variantCategories));
//nextProps.variantCategories[1] returns undefined <-- I need to access this

我得到了一个空的 Object.keys 数组,所以我认为我可能错误地访问了一些东西,并在一个全新的对象 i 上进行了相同的测试,

let i={1: {key: "value"}};
console.log("Debug i: ",i);
console.log("Debug i: ",Object.keys(i));

这是控制台(在右列展开)

enter image description here

我做错了什么?

最佳答案

您看到的最有可能的情况是属性 1 不可枚举,也就是说您不允许以传统意义上的属性形式访问它。

现在大多数浏览器中的检查器都会在控制台中显示 JavaScript 对象的所有方面,但这并不意味着您的代码将具有相同的权限或访问权限来检索该数据。要重现似乎正在发生的问题,您可以尝试以下代码片段:

var specialObject = Object.defineProperty({}, '1', {
enumerable: false,
value: 'some stuff here'
});

// console logging in an inspector would show the full contents
console.log(specialObject);
// prints: > Object {1: "some stuff here"}

// but trying to access the property as an enumerated value will not work:
console.log(Object.keys(specialObject));
// prints: > []

所以我的问题是 - 这些数据来自哪里?看来您期待一个更简单的对象。

关于javascript - nextProps 键虽然有内容但神秘地无法访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41829990/

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