javascript 变量赋值和 参数传递

本文探讨了JavaScript中变量和参数的传递方式,包括基本类型和引用类型的差别,并通过实例展示了对象属性更改的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先上结论!

变量赋值:

  基本类型:按照值传递 (也就是会复制一份)

  引用类型:按照引用传递(也就是会传递对象的引用)

参数传递

  基本类型:按照值传递 (也就是会复制一份)

  引用类型:按照值传递 (也就是会复制一份)//此处有疑惑!!!!

如果以上结论大家都知道,可以不用再向下看了……

 

变量赋值--基本类型
var num1 = 1;
var num2 = num1;
num2= 2;
alert(num1);//1

变量赋值--对象类型 var obj1 = new Object(); //修改指向 var obj2 = obj1; obj2.name = 'haha'; alert(obj2.name); //结果是 haha
    function setName(obj){
        obj.name='haha';
        obj= new Object();
        obj.name='wuwuwu';
    }
    var person= new Object();
    alert(person.name);//按照作者的话 此处是haha 而不是wuwuwu说明是值传递而不是引用(感觉这个例子有问题啊)

    //  可是我用变量赋值 结果依然是haha 而不是wuwu。 
    var obj1 = new Object();
    //修改指向
    var obj2 = obj1;
    obj2.name = 'haha';
    obj2= new Object();
    obj2.name='wuwuwu';
    alert(obj1.name);

 

转载于:https://www.cnblogs.com/WhiteHorseIsNotHorse/p/6261614.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值