美文网首页
值传递和值引用

值传递和值引用

作者: 龙叉叉 | 来源:发表于2019-02-13 09:57 被阅读0次

    https://www.cnblogs.com/jameslong/p/3865771.html
    https://www.zhihu.com/question/27114726

    值传递

    基本类型:Number Boolean String Undefined Null 这5种就是javascript种的基本数据类型了;

    引用类型:其实你只要弄清楚一点就可以了:保存引用的变量,它里面装的值是这个对象在堆内存中的地址。

    对象、数组、函数:Object Array Fucntion
    新变量中的行为所产生的变化,会同时在原始变量上表现出来,他两是同一回事

    引用类型如何赋值?

    函数都是传递值

    function addTen(num) {
    num += 10;
    return num;
    }
    var count = 20;
    var result = addTen(count);
    alert(count); //20,没有变化
    alert(result); //30

    ————————
    var a = {};
    a.name ="1"
    var b=a;
    var c=a.name;
    a.name ="2"
    alert(b);
    alert(c);

    ——————————————————
    var num = 100,
    name = "AAA",
    obj1 = {
    value: "aaa"
    },
    obj2 = {
    value: "bbb"
    },
    obj3 = obj2;

    function change(num, name, obj1, obj2) {
    num = num * 10;
    name = "BBB";
    obj1 = obj2;
    obj2.value = "ccc";
    }

    change(num, name, obj1, obj2);

    console.log(num); // 10
    console.log(name); // "AAA"
    console.log(obj1.value); //"aaa"
    console.log(obj2.value); //"ccc"
    console.log(obj3.value); //"ccc"

    相关文章

      网友评论

          本文标题:值传递和值引用

          本文链接:https://www.haomeiwen.com/subject/wxkreqtx.html