javascript 面向对象

Posted wangzheng98

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 面向对象相关的知识,希望对你有一定的参考价值。

1.创建对象

var emp = new Object(); //创建一个Object 对象
emp.name = ‘stanley‘; //创建一个name 属性并赋值
emp.age = 10; //创建一个age 属性并赋值
emp.run = function () {
console.log(this.name,this.age);
};
emp.run(); //输出属性和方法的值

this. 代表emp的本身,这是创建一个对象的一种基本方法,但是这种方法会存在一种缺陷,需要添加多个对象的话,代码重复性大,为避免这一现象使用构造函数

2.构造函数

function emp(name,age){
                var obj =new Object;
                obj.name = name;
                obj.age = age;
                obj.run =  function(){
                    console.log(this.name,this.age);
                }
            }
            var stanley = new emp("stanly",10);//必须主要new语法
            console.log(stanley);

3.原型(prototype)

  每个javascript对象都有一个原型对象,每个对象都有一个隐藏的__proto__属性,这个属性就是“原型对象”的引用。

      1、prototype本质上还是一个JavaScript对象;

      2、每个函数都有一个默认的prototype属性;

      3、通过prototype我们可以扩展Javascript的对象

function emp(name,age){
                var obj =new Object;
                obj.name = name;
                obj.age = age;
                obj.run =  function(){
                    console.log(this.name,this.age,this.money);
                }
            }
            emp.prototype.money = 500;//通过原型增加属性
            var zhangwuji = new emp("zhangwuji",100);
            console.log(zhangwuji.money); 

  利用原型 来求数组的和

 1) 用原型插入一个求数组和的方法

 Array.prototype.sum = function(){
             var sum = 0;
            for(var i=0;i<this.length;i++){
               sum += this[i];
             }
            return sum;

  然后定义数组,输出计算的和

var arr1 = new Array(1,2,3,4,5,6);
console.log(arr1.sum());

 

4.继承

    

  

 

以上是关于javascript 面向对象的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段12——JavaScript的Promise对象

VSCode自定义代码片段12——JavaScript的Promise对象

常用Javascript代码片段集锦

JavaScript单行代码,也就是代码片段

javascript 仿面向对象编程实例代码(私有,公共变量。。。)

JavaScript对象原型链继承闭包