JS进阶
JavaScript对象
定义
对象是 JavaScript 数据类型的一种,对象数据类型可以被理解成是一种数据集合。它由属性和方法两部分构成。
语法
与之前声明数值或字符串类型的变量格式基本相同
声明对象类型变量,使用一对花括号
let user = {}
//user 便是一个对象,目前它是一个空对象
属性和访问
属性:描述性信息。
声明对象并添加属性
- 属性都是成对出现的,包括属性名和值,它们之间使用英文:分隔
- 多个属性之间使用英文,分隔
- 属性就是依附在对象上的变量
- 属性名可以使用" "或’ ',一般情况下省略,除非名称遇到特殊符号如空格、中横线等
let person = {
name: '小明',
age: 18,
stature: 185,
gender: '男',
}
属性访问
使用 . 或者[’ ']获得对象中属性对应的值
let person = {
name: '小明',
age: 18,
stature: 185,
gender: '男',
}
console.log(person.name) //小明
console.log(person.gender) //男
console.log(person['stature']) //185
console.log(person.stature) //185
动态为对象添加属性
与直接定义作用相同
let user = {}
user.name = '小明'
user['age'] = 18
//在声明外边加属性
方法和调用
方法:行为性信息。
声明对象并添加方法
- 方法是由方法名和函数两部分构成,它们之间使用 : 分隔
- 多个属性之间使用英文,分隔
- 方法是依附在对象中的函数
- 方法名可以使用" "或’ ',一般情况下省略,除非名称遇到特殊符号如空格、中横线等
let person = {
name: '小红',
age: 18,
singing: function () {
console.log('就让这大雨全都落下')
},
run: function () {
console.log('在雨中跑')
}
}
方法调用
let person = {
name: '小红',
age: 18,
singing: function () {
console.log('就让这大雨全都落下')
},
run: function () {
console.log('在雨中跑')
}
}
person.singing()
person.run()
动态为对象添加方法
let user = {}
user.name = '小明'
user.['age'] = 18
user.move = function () {
console.log('移动')
}
//在声明外边加属性
注意:无论是属性或是方法,同一个对象中出现名称一样的,后面的会覆盖前面的。
null
通常只用它来表示不存在的对象。使用 typeof 检测类型它的类型时,结果为object。
遍历对象
格式
for(let i in 属性名)
let person = {
name: '小红',
age: 18,
}
for(let i in person) {
console.log(i);
}
//输出结果(输出属性名)为:
//name
//age
内置对象
例如,cinsole就是一个内置对象,log是其中一个方法。
Math(数学对象)
属性
//获取圆周率
console.log(Math.PI);
方法
//生成0~1之间的随机数,含0不含1
Math.random()
//舍弃小数部分,整数部分加1
Math.ceil(3.4)
//舍弃小数部分,整数部分不变
Math.floor(4.68)
//取整,四舍五入原则
Math.round(5.46539)
Math.round(4.849)
//找出最大值
Math.max(10,21,7,24,13)
//找出最小值
Math.min(24,18,6,19,21)
//求某个数的多少次方
Math.pow(4,2) //4的2次方
Math.pow(2,3) //2的3次方
//求平方根
Math.sqrt(16)