【简单的JS知识点,复习用】
1.对象是什么?
对象是一个无序的元素集合
2.声明对象
声明对象有两种方式:
(1)、字面量声明
//字面量声明
let obj={
name:'张三',
age:18,
sex:'男'
}
(2)、构造函数声明
//构造函数声明
let obj=new Object({
name:'张三',
age:18,
sex:'男'
})
console.log(obj);
拓展:如果想声明一个没有原型链的对象
//声明一个没有原型链的对象
var obj = Object.create(null)
console.log(obj);
//create是在原型上修改
var obj = Object.create({ a: 1, b: 2, c: 3 })
console.log(obj);
3.对象的取值
对象有两种取值方式:
(1)、对象.属性名
let obj = {
a: 1,
b: '张三',
c: 3
}
console.log(obj.a);//1
(2)、对象[‘属性名’]
let obj = {
a: 1,
b: '张三',
c: 3
}
console.log(obj['b']);//张三
var aaa = 'b'
console.log(obj[aaa]);//张三
4.循环遍历对象
(1)for in 循环
for in 可以循环对象和数组,循环出来的是对象键值对中的键,数组中的元素下标
let obj = {
name: '李四',
age: 29,
sex: "男"
}
for (let key in obj) {
console.log(key);//name age sex
}
for of 可以循环数组,不可以循环对象,循环出来的是数组元素
var arr = [1, '王武', 2222, '男']
for (let item of arr) {
console.log(item);// 1 王武 2222 男
}
(2)、使用 Object .keys 取出key值进行循环
let obj = {
name: '李四',
age: 29,
sex: "男"
}
console.log(Object.keys(obj));//['name', 'age', 'sex']
Object.keys(obj).forEach(item=>{
console.log(item,obj[item]);
})
5.对象合并 对象与数组合并
合并使用方法:Object.assign(目标对象,要合并的对象)
//对象合并
let obj = {
name: '赵六',
age: 18
}
let obj1 = {
sex: '男'
}
Object.assign(obj, obj1)
console.log(obj);//{name: '赵六', age: 18, sex: '男'}
//对象与数组合并
let arr = [1, 2, 3]
Object.assign(obj, arr)
console.log(obj);//{0: 1, 1: 2, 2: 3, name: '赵六', age: 18, sex: '男'}