js是基于对象的,不是面向对象,它是基于它内置的对象的。
js提供了多个内置对象如:Object,String,Date,Array等等。对象只是带有属性和方法的特殊数据。
创建对象1:通过new创建对象
var obj=new Object();//Object是构造方法
这个时候obj里面会有默认的内置对象的一些方法。
然后添加自定义的属性和方法
obj.name=“小明”
obj.sleep=function(){
console.log(这是自定义方法);
}
创建对象的方式2:通过字面量的方式去创建对象
var obj={}//这就相当于new Object();
下面是两种方法给自定义对象添加属性
方法1:
var obj2=new Object({
age:18,
name:"王五"
});
方法二:
var obj3={
name:"张三",
age:3,
fuc:function(){
console.log("这是函数")
}
}
以上两种都是基于Object的。
Array也是常用的内置对象
var obj=[]//这默认是定义了一个数组对象,和 var obj=new Array()一个意思
var obj2={}//这默认是定义了一个Object对象。var obj=new Object()
this关键字:
它代表函数运行时,自动生成的一个内部对象。
随着函数使用场合的不同,this的值会发生变化。但是有一个总的原则,那就是this指的是,调用函数的那个对象。
var obj={
age:19,
info:fuc
}
var obj2={
age:20,
info:fuc
}
function fuc(){
console.log("我今年的年纪是:"+this.age);
}
obj.info();
console.log(obj.age);
console.log("============");
obj2.info();
console.log(obj2.age);