国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

javascript的字符串按引用復制和傳遞,按值來比較介紹與應用

2024-05-06 14:20:14
字體:
來源:轉載
供稿:網友
按值和按引用的比較
Numbers 和 Boolean 類型的值 (true 和 false) 是按值來復制、傳遞和比較的。當按值復制或傳遞時,將在計算機內存中分配一塊空間并將原值復制到其中。然后,即使更改原來的值,也不會影響所復制的值(反過來也一樣),因為這兩個值是獨立的實體。

對象、數組以及函數是按引用來復制、傳遞和比較的。 當按地址復制或傳遞時,實際是創建一個指向原始項的指針,然后就像拷貝一樣來使用該指針。如果隨后更改原始項,則將同時更改原始項和復制項(反過來也一樣)。實際上只有一個實體;“復本”并不是一個真正的復本,而只是該數據的又一個引用。

當按引用比較時,要想比較成功,兩個變量必須參照完全相同的實體。例如,兩個不同的 Array 對象即使包含相同的元素也將比較為不相等。要想比較成功,其中一個變量必須為另一個的參考。要想檢查兩個數組是否包含了相同的元素,比較 toString() 方法的結果。

最后,字符串是按引用復制和傳遞的,但是是按值來比較的。請注意,假如有兩個 String 對象(用 new String("something") 創建的),按引用比較它們,但是,如果其中一個或者兩者都是字符串值的話,按值比較它們。

字符串是按引用復制和傳遞的,但是是按值來比較的。請注意,假如有兩個 String 對象(用 new String("something") 創建的),按引用比較它們,但是,如果其中一個或者兩者都是字符串值的話,按值比較它們。
代碼如下:
var str1="aa";
var str2=new String("aa");
var str3=str2;
function test(p){
var str4=p;
console.log(str4===str2);
}
console.log(str1===str2); //false
console.log(str3===str2); //true
test(str1);//false
test(str2);//true
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 张掖市| 镇巴县| 涞水县| 岐山县| 牙克石市| 温州市| 虎林市| 台东县| 宝应县| 甘泉县| 景东| 永和县| 湄潭县| 迭部县| 伊通| 苗栗市| 汽车| 晋城| 麻阳| 巫山县| 彭州市| 芷江| 启东市| 五常市| 疏附县| 延庆县| 唐河县| 汉阴县| 苏尼特右旗| 玉环县| 扶绥县| 宽城| 周至县| 远安县| 蓬莱市| 滕州市| 七台河市| 陇川县| 石城县| 宁陕县| 南投县|