react 陣列_react 陣列引用和值
阿新 • • 發佈:2021-01-07
技術標籤:react 陣列
react 陣列引用和值
單個賦值,
var j=9
i=j
重新申請了一個新空間,得到了2個空間。
所以i和j是獨立的
修改i,不會影響到j
陣列賦值
copy_arr1=arr1
並沒有重新申請新空間,
copy_arr1只是對原來的陣列,做了引用。
所以修改copy_arr1,還是修改了原來的陣列。
那麼,陣列複製該怎麼做呢?
可以重新申請一個空間。
然後把原來的值,做單個的複製。
程式碼
<script type="text/babel"> const element="hello"; var i=2; var arr={squares:[1,2,3]}; function Test(){ var copy_arr={squares:new Array(3)}; copy_arr.squares[0]=arr.squares[0]; copy_arr.squares[1]=arr.squares[1]; copy_arr.squares[2]=arr.squares[2]; copy_arr.squares[0]=4; return (<div>{copy_arr.squares.join(',')}</div>); } ReactDOM.render( <Test />, document.getElementById('example') ); </script>
用迴圈優化程式碼,
1,把重複的語句,用迴圈組織,可以簡潔一點。
2,不得不用迴圈。當陣列元素個數是100,1000,大數字的時候,如果一個一個寫,累死。
不得不用迴圈。
copy_arr.squares[0]=arr.squares[0];
copy_arr.squares[1]=arr.squares[1];
copy_arr.squares[2]=arr.squares[2];
for(var i=0;i<arr.squares.length;i++)
copy_arr.squares[i]=arr.squares[i];