我正在尝试从JavaScript对象获取密钥。当我检查对象时,我可以看到对象上有一个键值对,但是当我运行Object.keys(myObject)
时,我得到一个返回的空数组。我做错了什么?
我在这里关注此文档:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys
创建对象的函数如下:
query: function () {
var query = {}
_.each(this.$el.find('input:checked'), function (el, index) {
Object.defineProperty(query, el.id, {value: el.value})
})
return query
}
答案 0 :(得分:8)
Object.keys
仅返回可枚举 自己的键。试试Object.getOwnPropertyNames
。
答案 1 :(得分:2)
console.log(JSON.parse(JSON.stringify(keys)));
打印其内容的最新值,不该特定执行时间内该内容的值。
要记录该数组,请尝试将其值深度克隆到另一个变量,然后进行控制台记录。
{{1}}