gpt4 book ai didi

javascript - 对象数组不工作

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

var array = [{}];

var obj = {
name: "Fred X",
age: 20
}

function x() {
array[1].name = "Alice";
array[1].age = 48;
}

array[0] = obj;
document.write(array[0].name + "=" + array[0].age, "<br>");
array[1] = obj;
x();
document.write(array[0].name, "=", array[0].age < br > ",array[1].name,"=",array[1].age);

我正在尝试构建一个包含一系列项目(具有属性的对象)的购物车,但它不起作用。上面的代码说明了这个问题:当我尝试读出购物车时,所有项目都显示为最后添加的项目。我在这里没有得到什么?提前致谢...

最佳答案

您应该检查@Satpal's link因为它说明了您遇到的问题:引用问题。

当你创建一个变量时,比如obj,每当你改变它的值时,无论你在哪里使用它,它都会改变。

尝试使用函数在购物车中添加一些东西:

function addItemToCart(name, age) {
array.push({
name: name,
age: age
});
}

addItemToCart("Alice", 48);

array.forEach(cartItem => {
document.write(cartItem .name + "=" + cartItem .age, "<br>");
});

您的代码将比您以前的方式工作并且看起来更好。

此外,您的最后一行有一个拼写错误。

关于javascript - 对象数组不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45237858/

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