对象复习
概念
是一组属性和方法的集合,具体到某一个事物:一部手机,包含的属性有品牌、颜色、CPU、内存… 方法有打电话、发短信、玩游戏…
万物皆对象
JS中的对象
- 自定义对象:用户创建的对象
- 内置对象:JS提供的对象
- 宿主对象:根据不同的执行环境来划分
自定义对象创建——对象字面量
{ 属性名: 属性值, 属性名: 属性值… }
//对象字面量
var phone={
name:'小米',
color:'黑色',
'size':6.81,
'made-in':'中国'
}
console.log(phone)
属性的访问
对象.属性名
对象[‘属性名’]
如果属性名不存在返回undefined
练习:创建一个图书对象,包含的属性有编号,标题,价格,作者;修改图书的价格,添加图书的出版社;最后打印对象
var book={
bid:10086,
title:'我是你爸爸',
price:499,
author:'毛毛'
}
console.log(book)
book.price=699
book['publish']='喵星人出版社'
console.log(book)
自定义对象创建 —— 内置构造函数
new Object()
创建一个空对象 {},需要单独添加每一个属性
构造函数:通过new来调用的函数,最终返回一个对象(object)
var laptop=new Object()
//需要手动的往对象中添加每一个属性
laptop.lid=1
laptop.title='小米Air'
laptop.price=4199
console.log(laptop)
//检测数据类型
console.log(typeof laptop) //'object'
遍历属性
依次访问的对象中的每一个属性,通过循环的方式
for(var k in 对象){
k 表示每一个属性名
对象[k] 属性名对应的属性值
}
-练习:创建一个汽车对象,包含的属性有品牌、颜色、长度、宽度
var car=new Object()
car.brand='宝马'
car.color='白色'
car.length=4.9
car.width=2.1
console.log(car)
//名字:值 键值对
//遍历属性
for(var k in car){
// k表示每一次访问的属性名
// car[k] 属性值
console.log(k,car[k])
}