对象字面量:
整体是一个大括号"{}",内部有很多对属性和值,每组属性与值之间用冒号":"隔开,每组之间用逗号","隔开,最后一组不要用逗号;
对象是一种特殊的数据结构,对象可以自定义,可以用来描述我们现实生活中的实例,有强大的封装性。
var obj ={
name : "夏修胜",
age : 19,
height :173
}
console.log(typeof obj)
访问对象属性可用通过点语法"."或者中括号语法"[]"
console.log("通过点语法:" +obj.name) console.log("通过中括号:"+obj["age"])
如果对象的属性(名称)明确的时候,两种方式都可以,如果对象的属性(名称)不确定的时候,只用中括号语法。
例如:函数是形参或者变量的时候。
var sName ="name"; //错误写法 console.log(obj.sName); console.log(obj["sName"]); //正确写法 console.log(obj[sName]);
增加 : 可以通过点语法或者中括号语法来增加;
删除: 使用delete
修改: 修改和增加写法一样,如果规定对象里面有规定属性,这个点语法操作是修改,如果没有就是添加
//增加
obj.weight = 100; console.log(obj); //删除 delete obj.weight; console.log(obj); //修改 console.log("================"); obj.weight = 120; console.log(obj);
例子: 创建一个人的对象 名字,性别,年龄,是否结婚,朋友(数组),自我介绍的方法(),父母 (姓名,年龄)
var person = { name : "李晨" , age : 18, isMarry : false, friends :["范冰冰","陈赫","邓超"], say : function(sayContet){ //this ---person console.log("==============="); console.log(this); console.log("我的名字:" + this.name +" 我的年龄:" + this.age + "我想说什么:" + sayContet) }, farther : { name : "晨爹", age : 46 } } person.say("要亲亲,要抱抱") console.log(person) //访问 console.log(person.friends[1]) console.log(person.farther.name) console.log(person.farther["name"]) console.log(person["farther"].name) console.log(person["farther"]["name"]);