CNode

像validator这种库,我只用一个其中一个函数,把包都引入会不会影响性能?

问答
AAlexis374发布于10 年前最后回复10 年前1 回复3991 浏览0 收藏

比如我只用到 validator.isAlpha,但在es5语法下,require的时候是把validator引入的,执行的是validator的所有代码。 es6的静态加载可以避免这个问题,但是好像node 6.x 恰好不支持es6的模块系统?

查看回复

回复 (1)

Z
zheung#1·10 年前

个人认为影响的性能是极少的.... 因为require是一般情况下一次性引入的...

require('fs') === require('fs'); // true

引入全部库虽然会占据系统更多的内存(就validator的函数量也不算很多), 引入时需要执行的代码也只需要运行一次... 对程序的性能影响是微乎其微的

Node6使用V8的5.0版本...并不支持import Node7使用5.1...ES6的特性是99%都支持了(除了尾调用优化需要开启harmony) 不过Node7目前还是nightly阶段...还是有点远的...

参与回复
登录后即可参与回复。登录