gpt4 book ai didi

javascript - 将数组传递给js中的对象

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

我正在尝试将一个数组传递给一个对象:

function process(pid, size, time, IOCArray, IOCtimeA, status) {
this.pid = pid;
this.size = size;
this.time = time;
this.IOCtimeA = IOCtimeA; // should i use this?
for (var j = 0; j < IOCArray.length; j++) {
this.IOCArray[j] = IOCArray[j];
} // or something like this?
this.status = status;
}

proarray[ID] = new process(ID, size, time, IOCArray, IOCtimeA, status);

现在我如何访问 proarray[5].IOCArray[4]?实际上我不确定如何将“this”用于数组。

最佳答案

查看您提供的代码,您建议的两个解决方案都不理想,因为如果您将一个对象的属性设置为另一个数组,您只是在设置对原始数组的引用。如果您要修改对象的数组属性,那么您也将修改原始数组。

相反,您将不得不使用的是 slice()方法。这将为您的对象创建一个新的、独立的数组副本。

例子:

this.IOCArray = IOCArray.slice();

还值得注意的是 .slice()只会制作数组的浅拷贝。嵌套数组将设置对原始嵌套数组的引用,因此如果您知道任何变量中都有嵌套数组,则需要 slice()那些嵌套数组也是如此。

Array.prototype.slice() | MDN Documentation

关于javascript - 将数组传递给js中的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27333928/

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