对象的认识
对象:用于表示不同意义的数据
对象:key-value 键值对
key 键 value 值
key 都是字符串 相当于变量
value 任意类型的js数据
对象中属性不论存在还是不存在 是不会报错的
对象中取值可以用'.'也可以用'[]'(最好用[],用[]里面的key是字符串,不要写成变量了)
var Obj={"name":jack,"age":23}//name和age都是key,jack和23都是value
/对象分类:
内置对象 自定义对象
内置对象: Math Date array...
对象特点:
1:凡是对象一定有构造函数
构造函数的作用是创建对象
2:key是字符串 value是 js任意类型 key动态变化的
对象.constructor 获取构造
1.通过获取对象的key和value的数组间接实现遍历数组
读取对象下所有的key
Object.keys()
作用:获取某个对象中所有的key值,并返回数组
实参:待读取对象
返回值:key 组成的数组
var keys = Object.keys(obj)
console.log(keys)
读取对象下所有的value
Object.values()
作用:读取某对象中所有的value值 返回数组
实参:待读取对象
返回:value组成的数组
var values=Object.values(obj)
console.log(values)
2.通过for in 直接遍历对象(该方法也适用于数组)
循环读取所有key
var keyArr = []
var len = keyArr.length;
for(var k in obj){
console.log(k);
keyArr[len] = k;
len++
}
console.log(keyArr);
var obj={
name:'a'
}
//增
obj['age']=12
//删
delete obj['name']
//修
obj['age']=23
//查询
var res=obj['name']
}
typeof 在es5中 是百分之百正确的,不存在错误
console.log(typeof asdasd);//asdasd任意写都不会出错