Array数组的一些发现
今天对一些元素都是纯数字的数组做forEach
遍历操作,发现无法改变原数组,查找了一些资料发现,forEach
只能处理数组中的引用类型,元素为基础类型的需要另外的写法。如下:
1 |
|
这主要是和计算机的堆栈有关。基础类型是存储在栈中,forEach
中得到item也是存储于栈中,所以它就和数组中的元素毫无关系了;而对象是存储于堆中,遍历的时候item虽然在栈中但是它的指针会指向堆中的位置,所以可以直接修改原数组。
Array数组的一些发现
https://zouhualu.github.io/20211020/Array数组的一些发现/