目录
一、什么是对象
1、对象的创建
2、对象的引用
二、对象的增、改、删、遍历
1、对象的增加
2、对象的修改
3、对象的删除
4、对象的遍历
三、内置对象
一、什么是对象
对象是一组相关的数据集合,对象属于引用类型,对象相对于数组好处在于对象能够设置属性、方法,这样能直观的从字面量上表达数据的含义。
对象包含两种内容,属性和方法,他们本质在于值的不同,包含函数的就成为方法。
let 属性名 = {
属性名:属性值,
方法名:函数,
};
1、对象的创建
举例:
let 对象名 = {
// 属性:属性值
uname : '钢铁侠',
age : 35,
gender : '男',
height : '188CM',
weight : '88kg',
// 方法:函数
fei : function () {
console.log('飞飞飞');
},
eat : function () {
console.log('吃吃吃');
}
}
2、对象的引用
一个对象如果访问一个不存在的属性名,就会得到undeifned
对象进行引用内部的属性的时候主要使用以下两种方法:
对象.属性
这种对属性的访问方式主要在静态访问中使用,例如查看特定一个属性。
对象['属性']
这种对属性访问方式主要使用在动态访问中,例如,在对对象的遍历中使用,我们要让访问的属性随着某些参数的变化而变化。
二、对象的增、改、删、遍历
1、对象的增加
在对象内部增加属性:属性值/方法:函数,直接使用 对象名.新增属性名=值 即可,新增方法同理。
例:在对象中新增属性名为height的属性,值为 188CM
代码:
let hreo = {
// 属性名 : 属性值,
uname : '皇子',
age : 18,
weapon : '矛',
gongji : function () {
console.log('打打打');
},
running : function () {
console.log('跑跑跑赶紧跑');
}
}
hreo.height = '188CM';
console.log(hreo.height);
效果:
2、对象的修改
在对象内部修改属性:属性值/方法:函数,直接使用 对象名.修改属性名=值 即可。修改方法同理。
例:在对象中修改属性名为height的属性,值为 165CM
代码:
let hreo = {
// 属性名 : 属性值,
uname : '皇子',
age : 18,
weapon : '矛',
height:'188CM';
gongji : function () {
console.log('打打打');
},
running : function () {
console.log('跑跑跑赶紧跑');
}
}
hreo.height = '165CM';
console.log(hreo.height);
效果:
3、对象的删除
删除使用关键字 delete 对象名:属性名 即可
例:删除对象中age属性
代码:
let hreo = {
// 属性名 : 属性值,
uname : '皇子',
age : 18,
weapon : '矛',
height:'188CM';
gongji : function () {
console.log('打打打');
},
running : function () {
console.log('跑跑跑赶紧跑');
}
}
delete hreo.age;
console.log( hreo );
效果:
4、对象的遍历
对象的遍历使用for-in循环进行遍历,它的基本格式是:
for ( let key in 对象名 ) { //key这个名字可以自定义,一般使用k或者key
// key:代表对象中的所有属性名
// console.log( key, 对象名 ); //使用key, 对象名将会得到所有的属性名
console.log( obj[key] ) //使用 obj[key将得到所有的属性值 注意:[]里头不加''
}
例:遍历对象中的所有属性并输出属性值
代码:
let obj = {
// 属性名:属性值,
uname: '张三丰',
age: 22,
sex: '男',
score: 99,
index: 3,
height: '188CM',
weight: '96KG',
eat: function () {
console.log('吃饭');
},
fei: function () {
console.log('飞飞飞');
},
say: function () {
console.log('say方法');
},
}
// console.log( obj.uname );// 对象.属性用于固定属性的写法
// console.log( obj['age'] );// 对象['属性']用于动态属性的写法
// 遍历:for、in
for (let key in obj) {
// key:代表对象中的所有属性名
console.log(obj[key])
}
效果:
三、内置对象
js中内置好了许多常用的对象,我们使用Math来举例
Math.PI;能够返回圆周率PI的值
console.log( Math.PI );
Math.pow(底数,幂次 );幂运算:2的4次幂
let re = Math.pow(2, 4);
console.log( re );
Math.abs( 值);绝对值;-9的绝对值
let re = Math.abs( -9 );
Math.max/Math.min;取最大/最小值
let re = Math.max(23, 66, 3, 9, 7, 47, 28, 29);
//let re = Math.min( 23, 66, 3, 9, 7, 47, 28, 29 )
console.log( re );
Math.floor(值);向下取整:不大于这个数的最大整数
let re = Math.floor(4.99999999999);
console.log(re);
Math.ceil( 6.0 );向上取整: 不小于这个数的最小整数
let re = Math.ceil(6.0);
console.log(re);
Math.random();能够产生一个[0,1)之间的随机数
let re = Math.random(); // 随机数(0 - 1)能够取到0,但是取不到1这个值
console.log(re);
想要产生任意两个值之间的随机数公式:
Math.floor( Math.random() * (大数 - 小数 + 1) ) + 小数