Skip to content

ForbesLindesay-Unmaintained/acorn-es6

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

acorn-es6

Support many ES6 features with no runtime requirements. Sometimes this results in more code, but it provides a much cleaner build system. Things like Map, Set, Symbol etc. must be polyfilled separately if you wish to use them. This module only aims to provide syntax extensions.

Build Status Dependency Status NPM version

Installation

npm install acorn-es6

Usage

var compile = require('acorn-es6');

var compiled = compile('var log = msg => console.log(msg);');
// => "var log = function (msg) { console.log(msg); };"

You can also use it as a browserify transform by specifying the transform as acorn-es6/browserify.

Supported ES6 features

arrowFunctions

var log = msg => console.log(msg);

defaultParameters

function logDeveloper(name, codes = 'JavaScript', livesIn = 'USA') {
  console.log('name: %s, codes: %s, lives in: %s', name, codes, livesIn);
}

forOf

for (var element of [1, 2, 3]) {
  console.log('element:', element);
}

propertyMethods

var object = {
  prop: 42,
  // No need for function
  method() {
    return this.prop;
  }
};

templateLiterals

var x = 5, y = 10;
console.log(`${x} + ${y} = ${ x + y}`);
// 5 + 10 = 15

restParameters

function printList(listname, ...items) {
  console.log('list %s has the following items', listname);
  items.forEach(function (item) { console.log(item); });
}

spread

function add(x, y) {
  console.log('%d + %d = %d', x, y, x + y);
}
var numbers = [5, 10]
add(...numbers);
// 5 + 10 = 15

License

MIT

About

Support many ES6 features with no runtime requirements.

Resources

License

Stars

Watchers

Forks

Packages

No packages published