js面向对象写法中 很多人 用到init进行初始化。对此我有几个问题要问?

JavaScript05

js面向对象写法中 很多人 用到init进行初始化。对此我有几个问题要问?,第1张

init只是习惯性写法,一直以来编程人员的编写习惯而已。不是必须要这样写,不过养成共同的习惯对于自己及他人以后对代码进行修改或者浏览会提供方便。

至于为什么需要初始化,这是大部分对象所需要具有的通用属性。可能网站小的时候init初始化共用属性作用不大,但当多次调用该对象时,对象初始化则可能根据调用个体的不同而对本身进行调整。打个比方,“动物”是一个对象函数,作用都是给对象画上四条腿。把羊、牛、狮子分别赋予“动物”函数时,“动物”函数就需要根据个体的不同进行初始化确定四条腿的粗细了。

建议在编写对象时按照通用的写法,毕竟一个对象不是目前可以用到的,以后在其它地方也会用到或者会进行升级拥有更强大的功能,这时候按照通用习惯编写代码就显示出它的优势了。

var Animal  = function(){

    this.eat = function(){

        console.info("animal eat")

    }

}

var Human = function(){

    this.sleep = function(){

        console.log("human sleep")

    }

}

Human.prototype= new Animal()

Human.prototype.constructor=Human

var animal = new Animal

var human = new Human

animal.eat()

human.sleep()

human.eat()

微信小程序使用ThreeJs需要使用官方库 threejs-miniprogram ,API和原生ThreeJS基本一样,很好上手。喜欢数字孪生或者游戏的朋友,强烈推荐学习ThreeJs。该库入门简单,官方有很多优秀的demo可供参考,文档(包含中英文)也比较详细。有计划用ThreeJS做一个动物世界,模拟原始森林里各种各样的有趣的可爱的动物,包括它们声音和故事。有兴趣的或想加入这个计划的朋友可以在下面留言。

添加canvash画布,设置宽度100%,高度设置为屏幕高度减去状态栏高度和导航栏高度。

导入threejs,并创建threejs变量传入模型中,方便使用该变量。