JavaScript对象是只有属性和方法的特殊数据类型,由键值对组成。JavaScript的对象用于描述现实世界中的某个对象。JavaScript 中的所有事物都是对象:字符串、数值、数组、函数…
此外,JavaScript 允许自定义对象。
一、对象的格式用{ }把键值对包起来,键值对以xxx: xxx形式申明,用【,】隔开,最后一对后面不用加【,】否则低版本的浏览器会认为对象属性还没书写完毕,会报错。
例如:
var project = {
name:'小明',
age:18,
school:'附中',
father:'大明',
mother:'阿芳',
'best-friend':'小红',
address:'北京路',
phone:'13314756284'
}
上面的project 就定义了一个对象。
二、访问对象属性定义好对象之后我们应该怎么访问对象的属性呢?有两种访问的方法。
【1】:我们可以通过 对象名.属性来访问。因为这个属性属于这个对象,因此可以使用该方法。
例如:
console.log(project.name)//小明
console.log(project.age)//18
【JavaScript对象的创建使用与访问】【2】:你也许会发现,为什么‘best-friend’属性要用引号‘’括起来呢?因为属性中包含了特殊字符【-】,所以要用对象名[‘属性’]的方式来访问。
例如:
console.log(project['best-friend']);
//小红
console.log(project['address']);
//北京路
会发现,其实这个方法就是把键变成字符串而访问。你觉得哪种方法简单就用哪种,其实都可以。
三、操作对象怎么对对象的属性和属性值进行修改呢?由于JavaScript的对象是动态类型,所以既然可以访问到属性,那当然可以修改,增加属性和删除属性。
例如:小明改名字了,他最好的朋友也不是小红了,他没朋友了,转校了。
console.log(project.name='罗小明');
//修改
delete project['best-friend'];
//删除
project['new-school']='新东方';
//新增
console.log(project);
文章图片
四、查询对象属性加入一个对象的属性太多了,我们需要检测某个属性在不在这个对象内,我们可以用 in 来检测。
例如:
console.log('name' in project)//true
console.log('page' in project)//false
但需要注意的是,用 in 方法检测到的属性有可能不是改对象的,有可能是该对象继承得到的。
例如:
console.log('toString' in project)//true
所以可以使用hasOwnProperty( )方法来查询对象的属性是否是它自己的,而不是继承的。
例如:
console.log(project.hasOwnProperty('toString'));
//false
推荐阅读
- C语言简明教程(四)(C程序综合概述细节分析)
- 控制台上的Ghostrunner是最糟糕的播放方式
- 游戏评测(Genshin Impact源真冲击)
- Gears POP!游戏服务器正在关闭
- Gears 5 Story DLC将于12月推出
- 孤岛惊魂6和彩虹六号(检疫延迟)
- 漫威部队庞大且不断壮大的阵容中的每个角色
- Everspace 2在新的《赛博朋克2077》发布日期之后被推迟
- 封面揭示–漫威的蜘蛛侠(迈尔斯·莫拉莱斯)