vue中data為啥一定要用函式???

2021-10-25 10:05:01 字數 1074 閱讀 7214

知道這個是為啥,咱們可以模擬深拷貝和淺拷貝的原理。

淺拷貝:將原物件或原陣列的引用直接賦給新物件/新陣列,新物件/陣列只是原物件的乙個引用,新的物件陣列改變原來物件陣列也隨之改變。

深拷貝:兩個物件之間沒有任何關係

建立乙個新的物件和陣列,將原物件的各項屬性的「值」(陣列的所有元素)拷貝過來,是「值」而不是「引用」

下面舉兩個**例子進行對比

const obj =

functionb(

)let vuecomponent4 =b(

)let vuecomponent5 =b(

)let vuecomponent6 =b(

) vuecomponent4.name =

'梅西'

console.

log(vuecomponent4)

//梅西

console.

log(vuecomponent5)

//梅西

console.

log(vuecomponent6)

//梅西

如果兩個例項同時引用乙個物件,那麼當你修改其中乙個屬性的時候,另外乙個例項也會跟著改;

vue中,例項應該有自己各自的域才對,需要通過下面的方法來進行處理

functiona(

)}let vuecomponent1 =a(

)let vuecomponent2 =a(

)let vuecomponent3 =a(

) vuecomponent1.name =

'梅西'

console.

log(vuecomponent1)

//梅西

console.

log(vuecomponent2)

//c羅

console.

log(vuecomponent3)

//c羅

這就和上面深拷貝類似,所以vue 中data要用函式,

例項的屬性就不會改變,互不影響。

巨集一定要用大寫

被乙個巨集折騰了2次,才偶然發現問題。問題挺隱蔽的,也許是自己對bug出現後的表現,還不太敏感。以前認為巨集需要大寫,可能就是看著舒服,維護方便。經過這個bug後,增加了體會。巨集大寫可以降低除錯的難度,提高 的清晰度。最近維護的linux工程,為了出win版。中不可避免的用巨集隔開,或定義了一些在...

一定要用遞迴嗎?!

2017 02 14 今天看資料結構的時候,自己考慮了一下,如何用程式來實現這個函式。結果我的想法是利用迴圈的方式,而書上使用的方式是利用遞迴,所以就查了查這部分的內容,對比了下迴圈和遞迴的優缺點。首先,最重要的一點,就是這段函式的 盡量不使用遞迴。但是有時候,可能不使用遞迴,就會導致 量急劇上公升...

一定要用的 requestBody註解

後端接受前端傳遞的引數相信我們都用過 httpservletrequest的getparameter方法,但是在獲取資料方面都是key,value的方式,像十幾個傳遞的引數可能要在後台寫很多get,set方法來獲取或儲存獲取到的資料,就像這樣 而我們將資料定義在訊息體內,通過requestbody的...