文章出處
文章列表
通過添加 Build System 的方式來使 Sublime Text 3 運行 JS、ES6:
參考文章:如何優雅地使用Sublime Text3
參考書目:《ES6標準入門》阮一峰
摘抄:
- 下載安裝配置 NodeJS
- 在 Sublime 選擇 Tools->Build System->New Build System...
- 編輯,命名(如 Node.sublime-build)并保存,位置默認
{ "cmd": [ "node", "--use-strict", "--harmony", "$file" ], "selector": "source.js" }
- 在 Sublime 中選擇 Tools->Build System->Node,編寫完JS文件后保存 Ctrl + B 即可。
- 遇到類似于 SyntaxError: Unexpected token import 的錯誤,可以使用阮一峰老師寫的 ES-Checker 模塊檢查運行環境對ES6的支持情況,如:
C:\Users\Username>es-checker ECMAScript 6 Feature Detection (v1.3.0) Variables √ let and const √ TDZ error for too-early access of let or const declarations √ Redefinition of const declarations not allowed × destructuring assignments/declarations for arrays and objects × ... operator Data Types √ For...0f loop √ Map, Set, WeakMap, WeakSet √ Symbol √ Symbols cannot be implicitly coerced Number √ Octal (e.g. 0o1 ) and binary (e.g. 0b10 ) literal forms √ Old octal literal invalid now (e.g. 01 ) √ Static functions added to Math (e.g. Math.hypot(), Math.acosh(), Math.imul() ) √ Static functions added to Number (Number.isNaN(), Number.isInteger() ) String √ Methods added to String.prototype (String.prototype.includes(), String.prototype.repeat() ) √ Unicode code-point escape form in string literals (e.g. \u{20BB7} ) √ Unicode code-point escape form in identifier names (e.g. var \u{20BB7} = 42; ) × Unicode code-point escape form in regular expressions (e.g. var regexp = /\u{20BB7}/u; ) × y flag for sticky regular expressions (e.g. /b/y ) √ Template String Literals Function √ arrow function × default function parameter values × destructuring for function parameters × Inferences for function name property for anonymous functions × Tail-call optimization for function calls and recursion Array × Methods added to Array.prototype ([].fill(), [].find(), [].findIndex(), [].entries(), [].keys(), [].values() ) √ Static functions added to Array (Array.from(), Array.of() ) √ TypedArrays like Uint8Array, ArrayBuffer, Int8Array(), Int32Array(), Float64Array() √ Some Array methods (e.g. Int8Array.prototype.slice(), Int8Array.prototype.join(), Int8Array.prototype.forEach() ) added to the TypedArray prototypes × Some Array statics (e.g. Uint32Array.from(), Uint32Array.of() ) added to the TypedArray constructors Object √ __proto__ in object literal definition sets [[Prototype]] link × Static functions added to Object (Object.getOwnSymbolNames(), Object.assign() ) √ Object Literal Computed Property √ Object Literal Property Shorthands × Proxies × Reflect Generator and Promise √ Generator function √ Promises Class √ Class √ super allowed in object methods √ class ABC extends Array { .. } Module × Module export command × Module import command ========================================= Passes 27 feature Dectations Your runtime supports 64% of ECMAScript 6 =========================================
文章列表
全站熱搜