vue-cli初始化项目,开发环境运行项目使用了webpack-dev-server,而最新版本webpack-dev-server@2.9.1运行项目时,并不能成功的把es6语法转化为es5,所以在不支持es6的浏览器中会报错例如钉钉.UC浏览器等: Uncaught SyntaxError: Use of const in strict mode 解决办法: 将webpack-dev-server版本降为2.7.1重新安装即可 亲测有效. 参考:https://github.com/vuej…
具体报错console c:\Users\Administrator\WebstormProjects\blogtest\node_modules\connect-mongo\src\index.js:4 const Promise = require('bluebird'); ^^^^^ SyntaxError: Use of const in strict mode. at Module._compile (module.js:439:25) at Object.Module._extens…
了解你使用的JavaScript版本是很重要的,因为不同版本的JavaScript对某些语法或者特性的支持情况是不一样的,下面就来举一些例子来说明一下.首先来看一下const关键字,学过比如Java,c等语言的都知道,这是一个声明常量的关键字.他是ES5引入来的一个新标准.但是在ES3版本,他是不被支持的.就目前而言,依然有一些浏览器对他并不完全支持的,会把它当成var关键字对待,如下: // 有些环境下它是不可以改变的 const PI = 3.141592653589793; PI = "m…
详细学习链接: http://es6.ruanyifeng.com/#docs/let let命令 基本用法 ES6新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. 'use strict'; { let a = 10; var b = 1; } a // 报错,ReferenceError: a is not defined. b // 1 不存在变量提升 let不像var那样会发生"变量提升"现象.所以,变量一定要在声明后使…
var声明变量的作用域限制在其声明位置的上下文中 var x = 0; // x是全局变量,并且赋值为0. console.log(typeof z); // undefined,因为z还不存在. function a() { // 当a被调用时, var y = 2; // y被声明成函数a作用域的变量,然后赋值成2. console.log(x, y); // 0 2 function b() { // 当b被调用时, x = 3; // 全局变量x被赋值为3,不生成全局变量. y = 4;…