重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
好家伙,JS基础接着学,
毕节网站建设公司创新互联建站,毕节网站设计制作,有大型网站制作公司丰富经验。已为毕节1000多家提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的毕节做网站的公司定做!
本篇内容为《JS高级程序设计》第四章学习笔记
ECMAScript变量可以包含两种不同类型的数据:原始值和引用值。原始值(primitive value)就是最简单的数据,引用值(reference value)则是由多个值构成的对象。
在把一个值赋给变量时, JavaScript引擎必须确定这个值是原始值还是引用值。
6种原始值:
1.Undefined
2.Null
3.Boolean
4.Number
5.String
6.Symbol。
引用值:
我们常见的引用值就是"对象"
保存原始值的变量是按值(by value )访问的,因为我们操作的就是存储在变量中的实际值。
(这句是真的抽象,按我的理解来,按值访问即在栈中保存的实际的数值)
引用值是保存在内存中的对象。
(这句反而好理解,我们可以把他理解为引用值保存的是一个指针,后面的例子会帮助我们更好理解)
与其他语言不同,JavaScript不允许直接访问内存位置(小东西真别致),
因此也就不能直接操作对象所在的内存空间。
在操作对象时,实际上操作的是对该对象的引用(reference)而非实际的对象本身。
为此,保存引用值的变量是按引用(by reference)访问的。
注意:在很多语言中,字符串是使用对象表示的,因此被认为是引用类型
原始值和引用值的定义方式很类似,都是创建一个变量,然后给它赋一个值。
不过,在变量保存了这个值之后,可以对这个值做什么,则大有不同。
2.1.对于原始值,不能添加属性,举个例子
let panghu_1 = "panghu";
panghu_1.age=20;
console.log(panghu_1.age);