javacript的面向对象思想体现在哪里?

感觉和c++相比理解起来反而困难了

  • web开发(js部分)基本都是建立在比较高级的接口之上的,所以在实现简单的页面时不需要像java那种比较严格的面向对象风格。
  • 很多应用中需要的更多的是一些单例,而js是一门简单灵活的语言,实现单例也不需要想java那样,做很多的定义,你可以直接创建一个object然后添加各种属性和方法,也可以使用prototype的方式,也可以借助闭包来实现。
  • 剩下的比较复杂的功能,就需要借助于面向对象思想来搞定了。也可能会涉及一些涉及模式,比如策略模式、状态机模式等等,这时时需要多态的对象实例。但是继承层次一般不会很深,使用prototype基本就够了,而且在js当中使用mixin也比较容易。

综上所述,在js当中面向对象思想其实是相对比较弱的,或者说面向对象是为了更加正交的系统设计,js则提供了更多的选择。很多人把这两者的关系搞反了。所以在js的开发工程中,应该更注重模块划分,而不是面向对象。逻辑思路略乱哈。

  • vue数据循环遍历问题
  • call 和 apply的普通显示绑定为何说还是会丢失绑定,而bind不会?
  • jquery给spring mvc发送请求,拿不到结果
  • chrome调试多个脚本文件,会自动加载RequireJs文件?
  • 关于audio的一个问题
  • 多个多维数组查找相同值?
  • 关于bootstrap的JavaScript插件中工具条问题
  • 移动端设置高度手机显示的时候给吞掉一部分高度
  • vuejs的data增加多级key后不会触发更新
  • vue keep-alive 如何携带多个参数?
  • weex-chart npm 不能install