对象
当我们描述一组数据类型各不相同的数据时,使用数组来描述就会很不方便
这时我们就可以使用对象来描述
例:描述一个人
var obj {
name:"小立子",
age:18,
sex:"女",
height:180
}
在定义对象时 对象内的属性值为字符串时需要用单引号或者双引号引起来 属性值为数字时不用
上一个属性到下一个属性之间用逗号隔开 最后一个可以不加
对象的定义
对象的定义有两种:
1.字面量定义:
var obj = {}
2.构造函数式:
var obj = new Obj();
***注:构造函数式 首字母需要大写
对象的属性操作
1.对象的属性添加
var obj = {
name:"小王"
}
//定义赋值法添加属性
var a = "hello"; //先声明一个变量,里面的值作为对象的属性
obj[a] = "world"; //world作为hello这条属性的属性值
//直接添加法
obj.hello = "world";//此时是添加一个属性为hello属性值为world的对象内容
console.log(obj);
var obj = {
name : "阿九"
}
obj[a] = "woeld"; /* 该定义方法输出内容是对象obj中属性为undefined
属性值为world的一个对象内容 */
//原因:a虽然被定义了 但是值没有被赋予 因此a的值为undefined 意为定义未赋值
//若要让它成立 需加一条 var a = "hello";
对象属性的移除和遍历
1.对象属性的移除
对象的移除用delete关键字 专门用于移除对象内容的 不能删除变量
//定义一个对象
var obj = {
name:"阿九",
age:16,
sex:"女",
job:"老师"
}
//移除其中一个属性
console.log(delete obj.job);
//这样就能把对象中属性为job的内容删除掉
2.对象属性的遍历
JS中提供了一种专门用来遍历对象的语句 for in
var obj = {
name:"阿九",
age:16,
sex:"女",
job:"老师"
}
for(var i in obj){
console.log(i);
console.log(obj[i]);
//这里的i指obj里面的属性
//for in 是内部循环 不能使用点语法(.) 只能使用方括号语法([])
}