Javascript 多个变量是node app.js

Javascript 多个变量是node app.js,javascript,node.js,Javascript,Node.js,有多个var调用的形式是否不好,例如: var init = require('./config/init')(), config = require('./config/config'), express = require('express'), errorHandler = require('errorhandler'), bodyParser = require('body-parser'), expressValidator = re

有多个var调用的形式是否不好,例如:

 var init = require('./config/init')(),
     config = require('./config/config'),
     express = require('express'),
     errorHandler = require('errorhandler'),
     bodyParser = require('body-parser'),
     expressValidator = require('express-validator'),
     mongoose = require('mongoose'),
     path = require('path'),
     _ = require('lodash'),
     passport = require('passport'),
     passport_config = require('./config/passport'),
     session = require('express-session'),
     MongoStore = require('connect-mongo')(session),
     swagger = require("swagger-node-express"),
     secrets = require('./config/secrets'),
     multer = require('multer');

或者我应该单独设置每一个吗?

因为您使用它在全局范围内导入npm模块,这很好。但一般来说,最好为每个变量声明var。原因是缺少一个,将在全局范围内创建以下任何变量。例如,尝试捕捉以下内容中的错误:

var init = require('./config/init')(),
     config = require('./config/config'),
     express = require('express'),
     errorHandler = require('errorhandler'),
     bodyParser = require('body-parser')
     expressValidator = require('express-validator'),
     mongoose = require('mongoose'),
     path = require('path'),
     _ = require('lodash'),
     passport = require('passport'),
     passport_config = require('./config/passport'),
     session = require('express-session'),
     MongoStore = require('connect-mongo')(session),
     swagger = require("swagger-node-express"),
     secrets = require('./config/secrets'),
     multer = require('multer');

因为您正在使用它在全局范围内导入npm模块,所以这很好。但一般来说,最好为每个变量声明var。原因是缺少一个,将在全局范围内创建以下任何变量。例如,尝试捕捉以下内容中的错误:

var init = require('./config/init')(),
     config = require('./config/config'),
     express = require('express'),
     errorHandler = require('errorhandler'),
     bodyParser = require('body-parser')
     expressValidator = require('express-validator'),
     mongoose = require('mongoose'),
     path = require('path'),
     _ = require('lodash'),
     passport = require('passport'),
     passport_config = require('./config/passport'),
     session = require('express-session'),
     MongoStore = require('connect-mongo')(session),
     swagger = require("swagger-node-express"),
     secrets = require('./config/secrets'),
     multer = require('multer');

POB。我喜欢使用single var来保存一些击键。只要您感到舒服,它就完全可以了。我刚开始使用JSLint,它非常奇怪-我不确定是否遗漏了什么。这很好。仅供参考,虽然这显然是一个node.js示例,但在客户端js中,在单个var语句中定义多个变量实际上效率略高,因为它有助于缩小。但重要的是可读性;只要可读,就可以了。我喜欢使用single var来保存一些击键。只要您感到舒服,它就完全可以了。我刚开始使用JSLint,它非常奇怪-我不确定是否遗漏了什么。这很好。仅供参考,虽然这显然是一个node.js示例,但在客户端js中,在单个var语句中定义多个变量实际上效率略高,因为它有助于缩小。但重要的是可读性;只要可读就可以了。或者你可以只使用strict模式……如果你把use strict放在这个例子的顶部,那么你会得到一个ReferenceError。然后你的整个代码将必须符合use strict指令的标准,这不仅仅包括你声明变量的方式。此外不支持严格模式的浏览器将以与支持严格模式的浏览器不同的行为运行严格模式代码。@nshote-我昨天遇到了这个问题,在那里我开始实施use strict,它导致了应用程序错误。或者您可以只使用严格模式…如果您将use strict放在本示例的顶部,那么您将得到一个然后你的整个代码必须符合use strict指令的标准,这不仅仅包括你声明变量的方式。此外,不支持严格模式的浏览器将以与支持严格模式的浏览器不同的行为运行严格模式代码。@nshote-我昨天遇到了这个问题,在那里我开始实施use strict,它导致了应用程序错误。