摘要:關于變量的值的類型的總結。所以此時指向新的對象還是指向被添加了屬性的老對象,
關于變量的值的類型的總結。
//1.當多個變量的值是非引用類型
var a=1;
var b=a; //系統復制了a的值并賦值給b
a++; //a自身的值被改變,而b的值不受影響 a b的值雖相等但互不影響
console.log(a)//2
console.log(b)//1
//2.當多個變量的值是引用類型
var a={n:1}; //a的值是一個引用對象,在內存中保存這個對象的地址,a指向{n:1}
var b=a; //將a賦值給b,其實是將a的引用賦給了b,a和b同時是指向 {n:1}.
a.n++; //當a的引用對象發生改變時,必然b的值也會被改變。因為他們指向同一個引用對象
console.log(a.n);//2
console.log(b.n);//2
//3.當多個變量的值是引用對象,其中一個變量發生引用對象改變時
var a={n:1};
var b=a;
a.x=a={n:2};
console.log(a.x);//undefined
console.log(b.x);//{n:2}
/*a 的對象是一個引用對象
*a賦值給b,ab同時指向同一引用對象
a并沒有x屬性,當強行調用x屬性時,是undefined,將a={n:2}賦值給a.x,此時a原有的引用對象變更成{n:1,x:{n:2}},同時a={n:2}使a原來的引用對象,變更成{n:2}
*但是b的引用對象只是被變更了值,而并沒有改變引用。所以此時a指向新的對象{n:2},b還是指向被添加了x屬性的老對象{n:1,x:{n:2}}
*/
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/86199.html
摘要:可空性在中,類型系統區分一個引用是可以容納可空引用還是不能容納非空引用。使用可以很方便得將可空轉為非空,但可空變量值為,則會。 目錄介紹 01.可空性 02.安全調用運算符:?. 03.Elvis運算符:?: 04.安全轉換運算符:as? 05.非空斷言:!! 06.let函數說明 07.可空類型的擴展 08.Java中判斷方式 09.kotlin是否解決NPE 10.kotlin如...
摘要:函數式編程不是一個框架或工具,而是一種編寫代碼的方式。函數式編程首先是一個聲明式編程范例。舉個例子純函數函數式編程基于的前提是您將基于純函數構建不可變的程序作為業務邏輯的構建塊。 showImg(https://segmentfault.com/img/remote/1460000012402865?w=693&h=339); 最近朋友推薦這本書:Functional PHP ,很多對...
閱讀 3964·2021-11-11 10:58
閱讀 3339·2021-09-26 09:46
閱讀 1918·2019-08-30 15:55
閱讀 983·2019-08-30 13:52
閱讀 1951·2019-08-29 13:11
閱讀 3031·2019-08-29 11:27
閱讀 1524·2019-08-26 18:18
閱讀 2635·2019-08-23 14:17