对象的概念
js中的对象是一种无序属性的集合,属性由键值对构成
对象的创建
1.对象字面量
var obj = {
name : "小张",
age : 18,
work : function(){
console.log("程序员");
}
}
2.构造函数
var obj = new Object();
obj.name = "小张";
obj.work = function(){
console.log("程序员");
}
对象的使用
1.访问对象的两种方法
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.内置对象
ECMAScript已经规定的对象
例:Array、Date 、Function 、Object 、Error 、RegExp
String 、Boolean 、Number 等等
其中String 、Boolean 、Number为基本包装对象
console.log("123".length);//3
console.log(1.234.toFixed(2));//1.23
如上所示 基础数据类型可以调用对象的方法是因为:
当我们对一些基本数据类型的值去调用属性和方法时, 浏览器会临时使用包装类将其转换为对象, 然后在调用对象的属性和方法调用完以后,在将其转换为基本数据类型
基本包装对象在执行玩操作后就会立即销毁
2.宿主对象
就是浏览器所提供的对象
例:window location history document
3.自定义对象
程序员自定义的对象