一、对象的概念
js的对象就是一种无序集合,属性是由键值对构成的
二、对象的创建
1.对象字面量
1 var obj = { 2 name : ‘小张‘, 3 age : 10, 4 work : function(){ 5 console.log(‘程序员‘) 6 } 7 }
2.构造函数
1 vaar obj = new Object(); 2 obj.name = ‘小张‘; 3 obj.work = function(){ 4 console.log(‘程序员‘); 5 }
三、对象的使用
访问对象的两种方法
obj.name obj[‘name‘]
‘ .‘方法和 ‘ [] ‘ 方法区别: ‘ [] ‘ 内必须为字符串, ‘ . ‘不行;
‘ [] ‘可以使用变量,‘ . ‘ 不行’
四、对象的遍历
for...in遍历对象
for(var key in obj){ console.log("属性名:"+key); console.log("属性值:"+obj[key]); }
补充:
in操作符(判断左侧字符串是否是右侧对象的属性)
console.log(‘age‘ in obj) //false
delete操作符(删除对象中的某个属性)
console.log(delete obj.work); // true console.log(obj.work); //undefined
五、对象的分类
常用的内置对象/构造器/函数(标准库)
1.Object、Function、Array、{基本包装类---->String、Number、Boolean}、Math(不需要new创建;工具性质的方法:时间的格式化)、Data(客户端或者客户端创建的时间)、RegExp(一些属性与字符串结合使用)、Error、global/window
console.log("123".length);//3 console.log(1.234.toFixed(2));//1.23
当我们对一些基本数据类型的值去调用属性和方法时, 浏览器会临时使用包装类将其转换为对象, 然后在调用对象的属性和方法调用完以后,在将其转换为基本数据类型
基本包装对象在执行操作结束后就会立即销毁
2.宿主对象
就是浏览器提供的对象
例如:Window、location、history、document
3.自定义对象
程序员自己定义的