Javascript 进阶 4-2 物件取值、新增、删除

我们这章要学习如何从物件中取值

主要的方法有两种,一个是 . , 另一个是 []

var family = {    // property1: value1,    // property2: value2    name: '小明家',    deposit: 1000,    member: {        mom: '老妈',        son: '小明'    },        callFamily: function () {        console.log('小明家');    }};console.log(family.name); // 小明家console.log(family.member.mom); // 老妈console.log(family['name']);console.log(family['member']['mom']);

利用 . 的方式,就是在 物件变数名称之后加上.再加上物件属性的名称

就可以取道里面的那个值。

那如果是利用 [], 则是直接接在变数名称之后,其中用字串包裹住属性名称,依样可以取到这个值。

所以其实物件的属性名称 都会被视为字串!!!

那么到底这两个方法差别在哪里呢??

就是 [] 除了使用字串之外,也可以使用变数喔!

var family = {    // property1: value1,    // property2: value2    name: '小明家',    deposit: 1000,    1: '1', // 新增这行    member: {        mom: '老妈',        son: '小明'    },        callFamily: function () {        console.log('小明家');    }};console.log(family.name); // 小明家console.log(family.member.mom); // 老妈console.log(family['name']); // 小明家console.log(family['member']['mom']); // 老妈var a = 'name';console.log(family[a]); // 小明家

不只如此喔,如果我们在物件中,不小心插入了数字的属性,使用 [] 还是可以取的到,但如果是用 . 的话则没办法取到。

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

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

虽然 . , 很方便,但还是有它的限制。

那如果我们要执行 callFamily 这个 function 的话也一样

family.callFamily(); // 小明家family['callFamily'](); // 小明家

插入新增的属性以及值

除了刚刚我们定义的物件属性之外,要怎么在 javascript 运行的过程中,新增属性以及值呢?

其实跟取值的概念差不多~

family.dog = '小白';family['kitten'] = '小猫';

利用. / [] 这两个方式也都可以新增属性以及值。

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

可以实际运行之后发现,的确 dog 以及 kitten 有新增到 family 的物件中。

那么我们也可以透过 [] 新增一些特殊符号喔,例如说

family['$'] = '$$$$$';

这样也是可以的喔!

删除特定的属性

我们使用 delete + 物件取值得属性方式

delete family.deposit;delete family['$'];

好~那这篇文章,我们就介绍了物件的 取值 、 新增值 、 删除值 的方法。

希望能对各位有帮助!汪汪


关于作者: 网站小编

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

热门文章