# 章序号/节序号/节/笔记序号 《JavaScript&jQuery》 # 概念阐释 ## 语义 通过手动写出方法与属性来创建一个[[JavaScript 对象]]。 对象是将一组[[JavaScript 变量|变量]]和[[js 函数与调用函数|函数]]组合起来,创建一个计算机世界的模型。 - 在对象中:变量被认为是**属性property** - 属性**描述对象** - 属性的值:字符串、数字、布尔值、数组、另一个对象 - 在对象中:函数被认为是**方法method** - 方法代表和**对象相关的任务**,告诉计算机做什么 - 在对象中:属性和方法的名称叫做**键key**,对应的内容叫做**值value** ## 语法 ```js var hotel = { name:'Quary', rooms:40, roomType:['twin','double','suite'], checkAvailability(){ return this.rooms - this.booked; } }; ``` - 对象用花括号 **{ }** 包围属性和方法 - 变量**没有变量名称let var**,用冒号 **:** 分隔键和值,在键中没有值时可以省略冒号 **:** - 每组属性和方法用逗号 **,** 分隔 ![](http://image.harryrou.wiki/2023-03-16-%E6%88%AA%E5%B1%8F2023-03-16%2008.10.40.png) # 举例子 ![](http://image.harryrou.wiki/2023-03-16-%E6%88%AA%E5%B1%8F2023-03-16%2008.15.23.png) ![](http://image.harryrou.wiki/2023-03-16-%E6%88%AA%E5%B1%8F2023-03-16%2008.15.36.png) # 类比、比较与对比 对象字面量不同于[[从类实例化一个对象]] # 问题 - [练习题](https://www.codecademy.com/courses/introduction-to-javascript/lessons/objects/exercises/objects) # 问题答案 ```js let fasterShip = { 'Fuel Type': 'Turbo Fuel', color:'silver' }; ``` # 备注(经验集/错误集) - 对象不能被重新赋值,但可以重新赋值对象[[js objects 对象属性|属性]] - [[js objects 对象作为函数参数| 对象作为函数参数]]时中只能更改对象属性,而不能更改对象 ## 参考资料 - [JavaScript对象基础-MDN](https://developer.mozilla.org/zh-CN/docs/Learn/JavaScript/Objects/Basics) - [使用对象- JavaScript|MDN](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Working_with_Objects#%E5%AF%B9%E8%B1%A1%E6%A6%82%E8%BF%B0)