整合營(yíng)銷(xiāo)服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢(xún)熱線:

          javascript基本數(shù)據(jù)類(lèi)型賦值和對(duì)象引用的內(nèi)存

          javascript基本數(shù)據(jù)類(lèi)型賦值和對(duì)象引用的內(nèi)存情況分析
          let c={
                name: '我的對(duì)象'
              }
              let d=c;
              console.log(c, d);  // {name: "我的對(duì)象"} {name: "我的對(duì)象"}
              d.name="我是改變后的對(duì)象";
              console.log(c, d);  // {name:"我是改變后的對(duì)象"}{name:"我是改變后的對(duì)象"}
          復(fù)制代碼

          一次輸出c和b是c對(duì)象的原始值,后面我們改變了b對(duì)象下的name,第二次輸出發(fā)現(xiàn)兩個(gè)都被改變了,那為什么a也會(huì)被改變呢?

          我來(lái)看看瀏覽器內(nèi)存內(nèi)部到底發(fā)生了什么!!!

          打開(kāi)瀏覽器內(nèi)存,可以看到一堆內(nèi)容,我們過(guò)濾掉其他無(wú)用的,只選取string類(lèi)型下面的數(shù)據(jù),發(fā)現(xiàn)b所修改的內(nèi)存信息就顯示在第二個(gè),點(diǎn)擊詳情會(huì)看到下面紅色框里面的內(nèi)容。

          d in system / Context @130419
          c in system / Context @130419
          復(fù)制代碼

          后面的@130419就是內(nèi)存的地址,我們發(fā)現(xiàn)d和c的內(nèi)存地址只是一樣的。

          基本類(lèi)型的賦值

          上面是對(duì)象類(lèi)型的引用,當(dāng)引用對(duì)象修改之后被引用對(duì)象也會(huì)被修改。那我們?cè)囋嚳椿绢?lèi)型會(huì)不會(huì)被修改!

          let a="我是a";
              let b=a;
              console.log(a, b);  // 我是a 我是a
              b="我是b,我變了";
              console.log(a, b);  // 我是a 我是b,我變了
          復(fù)制代碼

          輸出結(jié)果是給b賦值了"我是b,我變了"之后,a并沒(méi)有被修改。那我們看看內(nèi)存發(fā)生了什么變化? 在內(nèi)存頁(yè)面我們?cè)傩陆ㄒ粋€(gè)快照,結(jié)果如下:

          https://www.tuicool.com/articles/bmY7Brr

          值傳值: 將一個(gè)變量的值拷貝一份賦給另一個(gè)變量。

          如果這個(gè)變量的值修改的話不會(huì)影響到另外一個(gè)變量, 這兩個(gè)變量之間沒(méi)有任何聯(lián)系。

          <script type="text/javascript">
              var num1=500
              var num2=num1;
              num2=40;
              alert(num1); // 500;
          </script>


          引用傳址:將一個(gè)變量的地址賦給另一個(gè)變量。

          如果這個(gè)變量的值有修改的話那么另外一個(gè)變量將同時(shí)受到影響, 將一個(gè)變量的內(nèi)存地址賦值給另外一個(gè)變量, 這兩個(gè)變量同時(shí)指向同一個(gè)內(nèi)存地址,

          這兩個(gè)變量是有聯(lián)系的。

          <script type="text/javascript">
              var arr1=[3, 5, 7, 8, 10, 11];
              var arr2=arr1;
              arr2[0]=13;
              alert(arr1); //[13, 5, 7, 8, 10, 11]
          </script>

          在javascript中基本數(shù)據(jù)類(lèi)型的賦值操作都是賦值傳值;復(fù)合數(shù)據(jù)類(lèi)型的賦值都是引用傳址。

          C語(yǔ)言中,賦值運(yùn)算符和賦值表達(dá)式是程序中常見(jiàn)的一種操作形式。它們用于將一個(gè)值賦給變量,是實(shí)現(xiàn)變量賦值和更新的基本手段。本文將深入介紹C語(yǔ)言中的賦值運(yùn)算符和賦值表達(dá)式,包括常見(jiàn)的賦值運(yùn)算符、賦值表達(dá)式的使用方法、運(yùn)算規(guī)則和實(shí)際應(yīng)用場(chǎng)景,以幫助讀者更好地理解和掌握這一重要概念。

          以下是我整理的關(guān)于C語(yǔ)言的一些入門(mén)級(jí)資料,免費(fèi)分享給大家:https://m.hqyjai.net/emb_study_blue_short.html?xt=zxy


          主站蜘蛛池模板: 亚洲欧洲一区二区| 日韩高清国产一区在线| 国产精品日韩欧美一区二区三区| 国产精品一区二区综合| 亚洲AV无码一区二区二三区入口 | 亚洲欧美日韩中文字幕在线一区| 极品少妇伦理一区二区| 亚洲精品伦理熟女国产一区二区| 秋霞午夜一区二区| 久久AAAA片一区二区| 国产精品无码一区二区三区在 | 无码丰满熟妇一区二区| 久久精品一区二区免费看| 好湿好大硬得深一点动态图91精品福利一区二区 | 亚洲熟女一区二区三区| 一区二区精品视频| 国产视频一区二区| 日韩成人一区ftp在线播放| 亚洲一区二区三区国产精华液| 日韩精品一区二区三区中文| 国精品无码一区二区三区在线| 亚洲AV成人精品日韩一区18p | 久久久99精品一区二区| 无码精品久久一区二区三区| 国产成人无码精品一区不卡| 精品亚洲福利一区二区| 在线观看中文字幕一区| 在线视频一区二区日韩国产| 国产精品久久久久久一区二区三区| 国产乱人伦精品一区二区| 精品国产鲁一鲁一区二区| 国产精品福利一区二区久久| 精品一区二区三区在线播放视频| 亚洲av无码一区二区三区天堂古代| 精品一区二区三区东京热| 91久久精品无码一区二区毛片| 麻豆AV无码精品一区二区 | 精品中文字幕一区二区三区四区| 国产一区二区三区在线观看免费 | 国产一区二区三区手机在线观看| 国产aⅴ一区二区三区|