题目
现在有一个国王,想要组成一个由1000鸭子组成的合唱团,要求鸭子能够嘎嘎嘎的叫,但是最后只找有999只鸭子,该怎么办?请用代码实现。
分析
–
- 组成合唱团,则需要定义一个choir数组对象,来存放1000只鸭子;
- 定义一个鸭子duck对象,对象用对象字面量来表达;
- 鸭子能够嘎嘎嘎的叫,那么就需要定义一个方法sing;
- 要筛选能够嘎嘎嘎的叫的鸭子,那么就需要定义一个方法joinChoir来筛选鸭子;
- 通过for循环来实现999只鸭子加入choir;
- 只有999只鸭子,但是要求1000只鸭子,那么这个时候定义一个chicken对象,并定义一个方法sing,再加入choir;
- 合唱团组成,可以嘎嘎嘎嘎嘎嘎了。
代码
–
1 | <script> |
总结
- 组成合唱团(敏锐的逻辑能力);
- 加入合唱团应该写成一个方法(封装能力);
- 鸭子模型(深入的语言能力)(弱类型,不需要像java要写明类型(用class声明对象));
- JS不是传统的面向对象(class Duck),是基于原型式的面向对象();
- JS才是最面向对象的面向对象,除了简单数据类型的一切都是对象。
小知识
- 如何区分不同类型的对象=>Object.prototype.toString.call()
- 例如:
- Object.prototype.toString.call(choir)=>’object Array’
- Object.prototype.toString.call(duck)=>’object Object’
- Object.prototype.toString.call(sing)=>’object Function’
记得点点赞,发表意见评论哦~
本文转载自: 掘金