美文网首页Web前端之路程序员饥人谷技术博客
系统学习 JavaScript 的笔记【5】

系统学习 JavaScript 的笔记【5】

作者: 庄元丰 | 来源:发表于2017-03-16 20:34 被阅读73次

基本类型和应用类型的值

  • ** 基本类型**:就是简单的数据段,我们常见的基本数据类型有 Number , String,Boolean 等
  • 引用类型:它的值可以是一个,可以是多个
//在给两种类型赋值的时候,是有区别的
/*对于基本类型来说,可以如下赋值*/
var number_1 = "hello";
alert(number_1);        //输出的是 hello
/*对于引用类型,赋值方式可以如下*/
var n = new Object();
n.name = "zhuang";
n.age = 22;
n.sex = "man";          //由此可见,引用类型的赋值可以有很多个
alert(n.name);
alert(n.age);
alert(n.sex);

复制变量值

在复制变量的值上,两者的原理其实是有很大的区别的

/*对于基本类型来说,复制变量值就真的是在复制值*/
var a = 11;
var b = a;
alert(a);      //输出的是 11
alert(b);      //输出的是 11

基本类型

  • 复制前
1.PNG
  • 复制后
2.PNG
这虽然是复制,但是 a 和 b 是完全没有关系的,包括他们的值

引用类型

/*对于引用类型来说,复制变量值其实是在复制变量名称*/
var a = Object();
var b = a;
a.age = 1;
alert(b.age);      //输出的结果是 1
/*假如,我把age的值给改了*/
var a = Object();
var b = a;
a.age = 1;
alert(b.age);    //输出的结果是1
a.age = 2;
alert(b.age);    这里输出的结果是2

这说明了应用类型的赋值其实是动态的,换句话说,其实引用类型的复制,其实类似于变量名的复制

3.PNG

参数传递

参数的传递都是按值传递的方式来进行的,也就如同变量的复制一样。
注意: 在函数中,局部变量被引用一次后就会被销毁。外部如果再次调用就无法访问了。

相关文章

网友评论

    本文标题:系统学习 JavaScript 的笔记【5】

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