super-fool / blog

珍藏经典, 分享思想, 共同进步.加油
3 stars 0 forks source link

JS中, 那些所谓的实用工具库(utilities)到底有何差别? #1

Open super-fool opened 5 years ago

super-fool commented 5 years ago

在javascript界有一个关于关于原始类prototype扩展的最佳实践的讨论:

  1. 一边是支持直接在原始类的prototype上直接扩展,可能有与未来浏览器有潜在的冲突,这个派以sugar.js和prototype.js为最典型;

  2. 一边认为严格禁止prototype上直接扩展的,这样就不会和未来的javascript标准起冲突,这派以underscore和lo-dash为典型;

  3. 还有一派中间型,这派只在prototype上加上一些js标准注明的API,功能和标准一样,而且检测是否已经有了,已经有了就不加了,es5-shim.js和es6-shim.js为代表,这类库用于让旧浏览器支持新浏览器API。

个人偏向支持underscore和lo-dash,这样完全不会和javascript的标准起冲突.

super-fool commented 5 years ago

underscore.js 编程思想是 函数式编程 / 面向对象编程.

并且使用了单例设计模式.

从古至今的编程思想有: 面向过程编程 面向对象编程 函数式编程 ...etc