javaScript中值传递和引用传递
案例1
var str1 = "江西赣州于都县";
var number1 = 526.97;
var b = true;
var roles = ["建宁公主", "双儿", "曾柔", "沐剑屏", "阿珂", "方怡", "苏荃"];
var superStar = {name : "黄晓明", age : 43, wife : "Angelababy"};console.log("*1*", str1, number1, b, roles, superStar);//值传递和引用传递
function fun1(parm1, parm2, parm3, parm4, parm5){console.log("*2*", parm1, parm2, parm3, parm4, parm5);parm1 = "我家乡在江西于都县"; //基本类型的数据是传值parm2 = 89.74; //基本类型的数据是传值parm3 = false; //基本类型的数据是传值parm4[0] = "韦小宝"; //引用类型的数据是传引用parm5.age = 44; //引用类型的数据是传引用//引用传递会影响原来的变量console.log("*3*", parm1, parm2, parm3, parm4, parm5);console.log("*4*", str1, number1, b, roles, superStar);
}fun1(str1, number1, b, roles, superStar);
//引用传递会影响原来的变量,roles和superStar会受到影响
console.log("*5*", str1, number1, b, roles, superStar);
运行结果如下:
案例2
var str2 = "赣南脐橙";
var number2 = 246.58;
var b2 = true;
var roles2 = ["张无忌", "杨过", "段誉", "乔峰"];
var superStar2 = {name : "周杰伦", age : 39, wife : "昆凌"};console.log("*6*", str2, number2, b2, roles2, superStar2);//值传递和引用传递
function fun2(parm1, parm2, parm3, parm4, parm5){console.log("*7*", arguments[0], arguments[1], arguments[2], arguments[3], arguments[4]);//这里使用了arguments对象,效果和上一个案例的效果一样arguments[0] = "柿子饼"; //基本类型的数据是传值arguments[1] = 187.63; //基本类型的数据是传值arguments[2] = false; //基本类型的数据是传值arguments[3][0] = "令狐冲"; //引用类型的数据是传引用arguments[4].age = 37; //引用类型的数据是传引用//引用传递会影响原来的变量console.log("*8*", parm1, parm2, parm3, parm4, parm5);console.log("*9*", str2, number2, b2, roles2, superStar2);
}fun2(str2, number2, b2, roles2, superStar2);
//引用传递会影响原来的变量,roles2和superStar2会受到影响
console.log("*10*", str2, number2, b2, roles2, superStar2);
运行结果如下:
javaScript中值传递和引用传递相关推荐
- 三分钟让你掌握JavaScript中值传递和引用传递的区别
值传递:传递的是实际参数的一个副本.基本数据类型Undefined,Null,Boolean,Number.String都是值传递. 引用传递:传递的是实际参数的地址.引用数据类型Object,Arr ...
- JavaScript强化教程——对象的值传递和引用传递
2019独角兽企业重金招聘Python工程师标准>>> 本文为 H5EDU 机构官方 HTML5培训 教程,主要介绍:JavaScript强化教程--对象的值传递和引用传递 func ...
- javascript之值传递与引用传递
javascript之值传递与引用传递 在分析这个问题之前,我们需了解什么是按值传递(call by value),什么是按引用传递(call by reference).在计算机科学里,这个部分叫求 ...
- JavaScript的值传递和引用传递
原文: Explaining Value vs. Reference in Javascript 译者: Fundebug 为了保证可读性,本文采用意译而非直译.另外,本文版权归原作者所有,翻译仅用于 ...
- Javascript 之《函数传参到底是值传递还是引用传递》
前言 这个问题其实困惑了我好久,但是在实际使用中总是得过且过,不想去深究.由于这种态度,在学习 Javascript 过程中,水平一直都是出于半桶水状态,很多概念和原理似懂非懂,模糊不清. 所以,写了 ...
- Java中的值传递和引用传递
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 答:是值传递.Java 编程语言只有值传递参数.当一个对象实例作为 ...
- python参数传递方法_深入理解python中函数传递参数是值传递还是引用传递
python 的 深入理解python中函数传递参数是值传递还是引用传递 目前网络上大部分博客的结论都是这样的: Python不允许程序员选择采用传值还是传 引用.Python参数传递采用的肯定是&q ...
- Java中传参数--值传递和引用传递
** Java中传参数–值传递和引用传递 ** 在Java中,传参数分为值传递和引用传递. 在Java中的数据类型分为两大类:一类是引用类型,也叫类类型(除了String以外的所有复合数据类型,包括数 ...
- Python中值传递和引用传递区别
原文:http://blog.csdn.net/xuqiaobo/article/details/72236539 举例,函数参数如果是dic,都不需要返回值,原值就被改变了 def aa(dic): ...
最新文章
- Coggle加速计划:解决数据下载烦恼!
- SAP系统怎样快速应对2019税改?
- centos7 VNC-Server-6.7.2
- boost::shared_lock相关的测试程序
- Python基础概念_14_常见术语
- 教你如何将UIImageView视图中的图片变成圆角
- 栈-顺序表(代码、分析、汇编)
- 文件校验和(checksum或Hash)计算工具
- 想怎么GAN就怎么GAN,一键拯救发际线
- 企业安全三步走 惠普重新思考安全战略
- 【教程】如何在C#中创建PDF417条码
- Python基础总结
- cas入门之:cas 4 如何以http形式发布
- MapABC 地图定位
- 与报文交换比较,分组交换有哪些优点?
- 百度云html提取码,百度网盘提取码怎么设置?
- html记忆游戏,html5 最强大脑最强记忆游戏
- Python numpy nonzero 取矩阵中非零元素的下标
- windows粘贴不了
- 从“快稳省安全”看Chromium——Chromium学习系列