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对象