鸿蒙Next中如何创建新数组并赋值旧数组
在鸿蒙Next开发中,我想创建一个新数组并将旧数组的值赋给它,请问具体的实现方法是什么?比如旧数组是int[] oldArray = {1, 2, 3},如何高效地完成这个操作?需要注意哪些细节?
2 回复
在鸿蒙Next中,创建新数组并赋值旧数组,简单粗暴:
let newArray = [...oldArray];
或者用 slice() 大法:
let newArray = oldArray.slice();
搞定!别让旧数组霸占内存,新数组自己玩去~ 😎
更多关于鸿蒙Next中如何创建新数组并赋值旧数组的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在鸿蒙Next(HarmonyOS NEXT)中,创建新数组并赋值旧数组可以通过多种方式实现。以下是几种常见的方法:
1. 使用 slice() 方法
slice() 方法会返回原数组的浅拷贝,不修改原数组。
let oldArray = [1, 2, 3, 4];
let newArray = oldArray.slice();
2. 使用扩展运算符(Spread Operator)
扩展运算符 ... 可以快速复制数组。
let oldArray = [1, 2, 3, 4];
let newArray = [...oldArray];
3. 使用 Array.from() 方法
Array.from() 可以从类数组或可迭代对象创建新数组。
let oldArray = [1, 2, 3, 4];
let newArray = Array.from(oldArray);
4. 使用 concat() 方法
concat() 方法可以合并数组,通过合并空数组实现复制。
let oldArray = [1, 2, 3, 4];
let newArray = oldArray.concat();
5. 使用循环手动复制
如果需要深拷贝或特殊处理,可以手动遍历数组。
let oldArray = [1, 2, 3, 4];
let newArray = [];
for (let i = 0; i < oldArray.length; i++) {
newArray.push(oldArray[i]);
}
注意事项:
- 以上方法均为浅拷贝,如果数组包含对象或嵌套数组,修改嵌套内容会影响新旧数组。
- 如需深拷贝,可以使用
JSON.parse(JSON.stringify(oldArray))或其他深拷贝工具函数。
选择适合场景的方法即可。

