gpt4 book ai didi

javascript - 将 JavaScript 对象值复制到 javascript 中的关联数组中

转载 作者:行者123 更新时间:2023-11-30 12:50:42 25 4
gpt4 key购买 nike

将来自 JavaScript 对象的值放入关联数组。以下是我正在尝试做的示例。

$(window).load(function() {
items = [
{title: 'Paint pots'},
{title: 'Polka dots'},
{title: 'Pebbles'}
];
var test;
for(var item in items) {
test=[{name:item.title}];
}
for(item in test) {
alert(item.title);
}
});

但代码无法正常运行。谁能指出这里的错误?


这是我的 fiddle 的链接:http://jsfiddle.net/MACxav/9xJdD/

最佳答案

这里有一些导致问题的错误

var test; -- 你没有初始化 test

for(var item in items) -- 这里的每个 item 都是一个键,所以它是 0,1,2。它不是某些人可能期望的来自 items 数组的项目。

test=[{name:item.title}]; -- 您在这里覆盖了测试变量,而不是将项目添加到数组中,或者(如果这是您想要的)分配item.titlename

for(item in test) -- 和之前一样,这里的item不是对象而是key。

[编辑,合并到我之前的回答中,并进行一些编辑]

您的代码片段 ($(window).load) 的开头表明您使用的是 jQuery,因此我将使用 each 函数* jQuery 对象。

$(document).ready(function() {
items = [
{title: 'Paint pots'},
{title: 'Polka dots'},
{title: 'Pebbles'}
];
var test = []; /* initialize as array */
$.each(items, function(idx, item)
{
test.push({name:item.title}); /* add to array rather than overwrite */
})
$.each(test, function(idx, item) {
console.log(item.name); /* use console instead of alert, because we're not savages */
})
});

http://jsfiddle.net/2JwpL/

(* 一些浏览器支持 for each (variable in object) 结构,但现在是 deprecatedfor(variable of object) is proposed for EcmaScript 6 )

关于javascript - 将 JavaScript 对象值复制到 javascript 中的关联数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21061289/

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