亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js如何傳一個對象

發布時間:2020-09-25 09:18:03 來源:億速云 閱讀:252 作者:小新 欄目:web開發

小編給大家分享一下js如何傳一個對象,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

高程中講到:‘ECMAScript 中所有函數的參數都是按值傳遞’

這就像把值從一個變量復制到另一個變量一樣。

那引用類型的值也是像基本類型一樣?

例子1:

var person  = {
    name : "leaf"
};
function obj(o){
    o.name = "kafu";
   return o;
}
var result = obj(person);
console.log(result.name);// kafu
console.log(person.name);// kafu

怎么咋看結果都是看似引用類型的參數是按照引用傳遞的樣子呢?

例子2:

var person = {
    name : "leaf"
};
function obj(o){
    o = {
       name : "kafu"
    };
    return o;
}
var result = obj(person);
console.log(result.name);// kafu
console.log(person.name);// leaf

區別:

例子一中,把person傳到obj()中,其實就是把person對象的引用復制一份,傳遞給o(可以看成一個地址),person和o同時指向一個對象,o中修改那么屬性,其實就修改了他們共同指向的對象的name屬性。因為內存區此時就只有一個對象。

例子二種,o地址指向了另外新建的對象,此時內存中就有了兩個對象,o指向的新對象的任意改變,對原來person指向的舊對象是沒有什么影響的。

為什么說‘ECMAScript 中所有函數的參數都是按值傳遞’。

基本類型就不說了。

對于引用類型,參數的傳遞是傳遞對象的引用副本。相當于傳遞了一份拷貝之后的新地址,這拷貝地址其實也可以理解為按值傳遞(也叫共享傳遞)了。

利用對象作為參數傳遞

當用對象作為參數傳遞的時候,可以不用考慮參數的順序,這點很有用。

以上是js如何傳一個對象的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

js
AI

新营市| 丹凤县| 嘉兴市| 丘北县| 兴化市| 蒲江县| 福安市| 抚松县| 神木县| 夏邑县| 木兰县| 焉耆| 巢湖市| 屏边| 陈巴尔虎旗| 溧水县| 永仁县| 邯郸县| 双鸭山市| 盐亭县| 府谷县| 佛学| 肃宁县| 原阳县| 浠水县| 大埔县| 雷州市| 荥经县| 澄迈县| 广河县| 靖远县| 德昌县| 兴国县| 绥滨县| 卓尼县| 扶风县| 黑水县| 霍林郭勒市| 兴城市| 平凉市| 靖宇县|