高手们写的node代码都是怎样的优美?
发布于 10 年前 作者 jesseky 5512 次浏览 最后一次编辑是 8 年前 来自 问答

比如我菜鸟写成这样:

var exec = require(‘child_process’).exec; var sprintf = require(‘sprintf-js’).sprintf; var http = require(‘http’); var https = require(‘https’); var url = require(‘url’); var fs = require(‘fs’);

然后就发现 全局变量太多了,尤其是 url 这样的,很容易在后续的代码里 定义一个变量 var url = ‘http://www.baidu.com’ ; 然后代码就蹦掉了,我还查了半天才知道问题出在哪里。 当然,所有node的教程都是这么叫大家写这样随意的代码的,这样的代码肯定无法做大规模的工程吧?

可是一些系统的暴露的全局变量比如 process,比如 console 这样,为什么不用一个统一的全局变量比如 NODE.process, NODE.console ? 请教一下高手们优美的代码都是怎么样的?

12 回复

楼主的代码挺优美的

用IDE吧,会提示重复定义

可以多看看GitHub上的代码 恩

不用 global 的话,node 里哪有全局变量?var 出来的都是模块内的局部变量。

很少一个module会依赖这么多组件.

@afc163 哈哈,简单明了

高手不都是

var a =xxx var b =xxx …… var af =xxx …… var zzz =xxx (第26x26x26个函数)

(:з」∠) 我就是来卖个萌

关于process,是抽象汇编解释器的线程。底层是C? (function(process){ var global = this; …… })() 这个是NODE的启动。

var _g={}; _g.exec =… _g.sprintf =… _g.url =…

或者命名上区分下就是了 var globalExec =… var globalSprintf =… var globalUrl =…

sublime 装个 jshint 可以避免不少低级错误

@MiguelValentine 抽象汇编解释器是什么鬼……

回到顶部