〖大前端 - 基础入门三大核心之JS篇?〗- 面向对象之认识对象

2023-12-13 10:47:55
  • 说明:该文属于 大前端全栈架构白宝书专栏目前阶段免费如需要项目实战或者是体系化资源,文末名片加V!
  • 作者:哈哥撩编程,十余年工作经验, 从事过全栈研发、产品经理等工作,目前在公司担任研发部门CTO。
  • 荣誉:2022年度博客之星Top4、2023年度超级个体得主、谷歌与亚马逊开发者大会特约speaker全栈领域优质创作者



? 认识对象

对象(object)是“键值对”的集合,表示属性和值的映射关系

对象和数字、字符串、数组等一样,也是一个数据类型

对象的语法:

所有的键值对用大括号包裹,

键值对之间用逗号分隔,最后一个键值对后面可以不书写逗号(也可以书写逗号,没有影响)

键值对中的属性名和属性值用冒号分隔

示例代码:

var xiaomumu = {
    name: '小沐',
   	age: 2,
    sex: '男',
    hobbies: ['秋千','滑梯']
};

image-20230508113400676

观察上面的例子,可以看出这个对象描述的是一个名叫小沐沐的2岁小男孩,他的爱好是秋千和滑梯。对象更加注重每个键值对中属性名和属性值的映射关系,而并不注重各个键值对的顺序问题。上面的例子可以把名字、年龄等键值对交换位置,依然可以完整的描述出这个对象。

JS中对象的语法要特别注意一个地方:如果对象的属性名不符合JS标识符命名规范,则这个属性名必须用引号包裹,示例代码如下:

image-20230508113441802

? 对象属性的增删查改

🌟 访问(查询)对象的属性

访问对象的属性:用打点的方式访问

示例代码:

console.log(xiaomumu.name);  // '小沐沐'
console.log(xiaomumu.age);   // 2
console.log(xiaomumu.hobbies);  // ['秋千', '滑梯']

==注意,如果属性名不符合JS标识符的命名规范,就不能用打点的方式访问了,必须用方括号的写法来访问。==示例代码:

console.log(xiaomumu['favorite-books']);   // ['抱抱', '我的爸爸']

image-20230508113950159

==还需要注意:如果属性名以变量形式存储,则必须使用方括号形式访问。==示例代码:

var xiaomumu = {
    name: '小沐沐',
    age: 2,
    sex: '男',
    hobbies: ['秋千', '滑梯'],
    'favorite-books': ['抱抱', '我的爸爸']
};

var key = 'age';   //将属性名赋值给一个变量
if (key <= 3) {
    console.log('小宝宝');
}
console.log(xiaomumu.key);  // 访问不到
console.log(xiaomumu[key]);  // 通过方括号的方式访问到属性值

image-20230508115257687

🌟 修改对象的属性值

直接给对象的属性赋值即可更改其属性值

示例代码:

var xiaomumu = {
    name: '小沐沐',
    age: 2,
    sex: '男',
    hobbies: ['秋千', '滑梯'],
    'favorite-books': ['抱抱', '我的爸爸']
};
xiaomumu.age = 3;
xiaomumu.age++;

🌟 增加对象的属性

如果对象本身没有某个属性,用打点的方式赋值时,这个属性就会被创建出来

示例代码:

var xiaomumu = {
    name: '小沐沐',
    age: 2,
    sex: '男',
    hobbies: ['秋千', '滑梯'],
    'favorite-books': ['抱抱', '我的爸爸']
};
xiaomumu.height = '86cm';   // 执行到这个语句,xiaomumu这个对象就会新增一个height的属性,值为‘86cm’

🌟 删除对象的属性

使用delete操作符来删除对象的属性

示例代码:

var xiaomumu = {
    name: '小沐沐',
    age: 2,
    sex: '男',
    hobbies: ['秋千', '滑梯'],
    'favorite-books': ['抱抱', '我的爸爸']
};
delete obj['favorite-books'];  // 执行到这个语句,xiaomumu这个对象将删除掉'favorite-books'这个属性

image-20230508134624766

文章来源:https://blog.csdn.net/weixin_42250835/article/details/134902837
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。