new

2017-04-28  本文已影响16人  Simon_s

对于一个成长很慢的自己,就要不停的吸取并实践化为自己的东西

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
</body>
<script type="text/javascript">
    
    function soild(id) {
        this.id = id;
        this.health =42;
    }
    soild.prototype = {
        constructor:soild,    //需指明   士兵.prototype 的指向  因为你如果重新赋值的话  原先的constructor的属性就会消失
        兵种:"Amsoild",
        攻击力:5,
        行走: function() {},
        奔跑: function() {},
        死亡: function () {},
        攻击: function () {},
        防御: function () {}
    }
    
    var  arr  = []
    
    for(var i =0;i<100;i++) {
        arr.push(new soild(i))
    }
    console.log(arr)

// new 的操作是记录【 临时对象是由哪个函数创建的】 所以预先给 士兵.prototype 加上 constructor属性

//new关键字 可以帮助我们少做四件事情
// 1.不用创建临时对象 因为new会帮你做 【你使用 {this} 就可以访问到临时对象】
// 2.不用绑定原型 因为new会帮你做(new为了知道原型的在哪 所以指定原型的名字 为prototype)
// 3.不用 return 临时对象 因为new 会帮你做
// 4.不用给原型想名字了 因为 new 会帮你指定名字 为prototype
</script>
</html>

上一篇下一篇

猜你喜欢

热点阅读