二阶段JavaScript-Day18知识点整理(面向对象)

​ 面向对象就是拿别人写好的功能对象,调用对象的方法即可。核心思想:封装。

对象的创建

​ 对象:一系列属性和方法的无序集合。

​ 类:学生(不具体,抽象,模板) 老师 狗 动物

​ 对象:张飞(具体,抽象,模板产生的一个具体的实例)

​ 由类产生对象:

​ Array —>var arr = [12,34,3,5]

​ 通过类产生对象的这个过程:实例化对象

1.字面量创建对象

var obj = {name:"tianIn"};

2.内置的object创建对象

var obj = new Object();//{}
obj.name = "tianIn";
obj.age = "18";
console.log("obj");

由类产生对象

3.构造函数创建对象(ES3)

//普通函数:首字母小写,调用时直接调用,函数内部this指向window
function dog(){};   dog();  //普通函数

//构造函数的特点:首字母大写,调用时需要用new来调用,内部的this指向实例化的对象
function Dog(){};  
new Dog(); //构造函数

//构造函数就是一个类
function People(name, age){
//    console.log(this);//{}
   this.name = name;
   this.age = age;
   console.log(this);//构造函数内部的this指向实例化对象obj
}  
// 根据Dog这个类产生一个具体的对象
var obj = new People("天音",18) ;//new People()调用People函数
console.log(obj);
//上面几行代码会打印出两行一模一样的,就说明obj和this相等

4. class创建对象

class Dog {
    constructor(name, age) {
        console.log(this);
        this.name = name;
        this.age = age;
        console.log(this); //{name:  age:}
    }
    sleep() { console.log('狗爱睡觉') }        //注意:方法和方法之间没有逗号  方法需要通过对象来调用
    eat() { }
}
// 由类产生对象
var d = new Dog("花花", 2); //d就是this
d.sleep();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值