对象的创建方法:
1  var obj = { }  plainObject  对象字面量/对象直接量
如
var obj = {
lastName : “ABC”,
age : 40,
sex : undefined,
son : false,
health : 100;
drink : function(){
console.log(“i an drink”);
this.health ++;
}
}
2  构造函数
2.1  系统自带的构造函数  Object()
如
var obj = new Object();
然后可以往里面添加属性
2.2  自定义构造函数(命名最好遵守大驼峰式命名规则  这是用来区别正常函数的特点  如  TheFirstName)
 且必须需要通过new 的方式来获取对象  不过不是new  则当做正常的函数执行
 构造函数的内部原理:
1.在函数体最前面隐式的加上var this = { }
2.执行 this.xxx = xxx;
3.隐式的返回this 
如
function Car(color){
//这里相当于在对象函数体的第一行隐式的加上  var this = { }
//然后执行下面语句  依次往this对象里面装东西
this.color = color;
this.name = ‘BMW’;
this.weight = 1000;
this.health = 100;
this.run = function(){
this.health —;
}
//在对象函数体的最后相当于隐式的  return this
//如果这里人为的加上return语句  除了返回原始值无效之外  返回其他的都会把this给覆盖
//比如  return  123;  返回原始值无效  依旧返回this
//return { };  返回{ }  this无法返回
}
var car = new Car(‘red’);
若想增加对象里的属性可以 对象.属性名 = 值 的方式 如 obj.wife = “ahah”;
若想查询里面的值可以  对象.属性名  的方式  如  obj.age;
即使对象中没有这个属性  也会返回undefined  不会报错
若想删除某个属性  可以  delete 对象.属性名  返回结果是布尔类型的
即使对象中没有这个属性  删除后也会给你返回true
若想修改对象某个属性的值可以 对象.属性名 = 值 的方式 如 obj.age = 50;
