blog icon indicating copy to clipboard operation
blog copied to clipboard

new 构造函数

Open yongheng2016 opened this issue 6 years ago • 0 comments

约定习俗

  1. 构造函数首字母大写

  2. 构造函数可以省略create

  3. 如果构造函数没有传参数,可以省略括号

构造函数/封装

function Soldier(){
   // this = {}  默认
   // this.__proto__ = Soldier.prototype  默认
   this.ID = i
   this.生命值 = 42
   this.name = name || '战士'
   // return this  默认
}

// Soldier.prototype = {constructor: Soldier}  默认
Soldier.prototype.兵种 = '美国大兵'
Soldier.prototype.攻击力 = 5
Soldier.prototype.行走 = function () {/*行走*/}
Soldier.prototype.奔跑 = function () {/*奔跑 */}
Soldier.prototype.攻击 = function () {/*攻击 */}
Soldier.prototype.防御 = function () {/*防御 */}

var soldiers = []
for (var i=0; i<100; i++){
   soldiers.push( new Soldier )   // 构造函数没有传参数,可以省略括号

}

内存图

image

继承

image

原型

yongheng2016 avatar Apr 07 '18 04:04 yongheng2016