Javascript 进阶 4-4 物件与纯值

这个章节要来介绍 物件与纯值 的关係

之前我们介绍到

我们可以利用 . 的方式新增物件的属性以及对应的值

var family = {};family.name = '小明家';console.log(family); // {name: '小明家'}

那么如果我们今天对一个字串做相同的处理,会发生甚么事情呢?

var newStr = '字串';newStr.name = '小明家';console.log(newStr);

http://img2.58codes.com/2024/20121770e9cMVWR0dH.png

我们会发现不会有任何的改变喔~因为这里字串是属于 纯值,没有办法透过物件的操作方式来进行属性跟值的新增、修改、删除。

同为纯值的还有纯数字。

但是 阵列function 也都属于 物件 的一种,

var newArr = ['Arr'];console.log(typeof(newArr)); // objectnewArr.name = '小明家';console.log(newArr);

http://img2.58codes.com/2024/20121770zkJDUwTm4v.png

所以我们就可以知道 阵列 也是属于物件的一种资料结构。

另外 函式 呢?

function fn () {    console.log('fn console');}console.log(typeof(fn));

http://img2.58codes.com/2024/201217708wKBZ29eTq.png

你会发现~ㄟ?!?!怎么是 function 不是 object ,你刚刚不是说他是物件吗?!?!?

没错喔~其实function 这个类别是物件下的一个子类别,这里我们要用不同的console来进行检视才能验证这个事实喔!

function fn () {    console.log('fn console');}console.dir(fn); // 使用 console.dir 进行检视

http://img2.58codes.com/2024/20121770dcSw3Vw8TF.png

之后我们的确可以看到类似物件的内容,可以展开并且看到里面对应 property/ value。

同时也可以针对这个 function 进行属性的新增或修改喔~

但是 fn.name 是无法修改的,因为一开始在设定 function 的时候就已经设定好了。

function fn () {    console.log('fn console');}fn.color = 'black';console.dir(fn); // 使用 console.dir 进行检视

http://img2.58codes.com/2024/20121770xNSUSWFQoj.png

这个章节到这边就是接绍了 物件与纯值 的关係,希望对大家有帮助~那就到这边噜汪汪


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章