JavaScript面向对象编程

1.面向对象时,只关注对象提供的功能,不关注其内部的细节。 如JQUERY

2.面向对象时一种通用思想,并非只有编程中能用,任何事情都可以用。如公司里的上传下达

3.面向对象编程(OOP)的特点,传统的书本会说:多态,封装,继承三大特点

   应该还能理解成抽象,封装,继承三大特点

   抽象:抓住核心问题

   封装:不考虑内部实现,只考虑功能使用

   继承:从已有对象上,继承出新的对象

4.对象的组成

    方法---------函数:过程,动态的

    属性---------变量:状态,静态的

    变量和函数是自由的,属性和方法属于一个对象

5.this:当前的方法属于谁,this就是指谁    除了在函数面前有new的时候

function Person(name,sex)
{
this.name=name;
this.sex=sex;
alert(this);

}

var p1 = new Person("leo","男");

在这里的this是Object

原因是这个函数相当于

function Person(name,sex)
{
var this = new Object(); //虽然在JS里面不能这么写,但是差不多是这个意思,创建一个新的对象。
this.name=name;
this.sex=sex; //给this对象赋属性
return this; //返回this
}

6.构造对象的函数称之为构造函数,不具备实际功能,只能用来构造对象   如:var arr = new Array();

7.工厂方式构造对象。工厂的工作流程是这样的a.原料   b.加工    c.出厂。用工厂方式构造对象也是一样的,首先要创建一个对象(加工),然后给对象添加方法和属性(加工),最后返回对象(出厂)。例子:

function CreatePerson(name,sex)
{
var person = new Object(); //原料

person.name=name;
person.sex=sex;
person.show=function()
{
alert(this.name);
} //加工,给对象添加方法和属性

return person;

原文地址:https://www.cnblogs.com/wg-666/p/4891594.html