使用终端创建快速项目时,为什么每个导入的库都带有"var"?



当我使用terminal(命令"express myapp"(创建一个新的express项目时,所有导入的依赖项默认都带有var。

样品:

var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
var app = express();

我的理解是,如果我们不需要更改任何引用,我们应该使用"const"。然后,

为什么上面的依赖项是用var自动生成的?。我应该吗将所有这些内容从var?更改为cont?。如果我这样做,会不会有什么问题吗?。

为什么上面的依赖项是用var自动生成的?

因为const"相当"新(+4年(,因此可能有旧的nodejs实例仍在运行,必须支持它们。或者没有人认为有必要改变它(因为它有效,而且将永远有效(。

我应该把所有这些东西从var改成cont吗?

如果你有一些空闲时间,那是有意义的。

如果我这样做,会产生任何问题吗?

不,它更能解决问题,因为var可能会导致一些冲突。

我认为这是在es6发布之前完成的,可能是因为项目不包括babel——如果是es6发布之后,可能是import语句而不是require

此外,如果您的项目支持ie10以上的浏览器,那么您可以使用替换const

最新更新