odds = evens.map(function (v) { return v + 1; });
odds = evens.map(v => v + 1);
nums = numbers.map(function (v, i) { return v + i; });
nums = numbers.map((v, i) => v + i);
let shift = false; shiftPartial = numbers.map(v => { shift = !shift; return shift ? v + 1 : v; });
obj = values.map(v => { [v]: v });
obj = values.map(v => { [v]: v });
obj = values.map(v => ({ [v]: v }));
function timeout(duration = 0) { return new Promise((resolve, reject) => { setTimeout(resolve, duration); }); }
async function work() { await timeout(10000); console.log('done'); } work();
function f (x, y) { var a = Array.prototype.slice.call( arguments, 2 ); return (x + y) * a.length; }; f(1, 2, "hello", true, 7) === 9;
function f (x, y, ...a) { return (x + y) * a.length; } f(1, 2, "hello", true, 7) === 9;
console.log( "Hello " + firstName + ",\n" + "greetings from GLaDOS" );
console.log(` Hello ${firstName}, greetings from GLaDOS `);
\n \tHello ${firstName},\n \tgreetings from GLaDOS\n
console.log(dedent` Hello ${firstName}, greetings from GLaDOS `);
function fibonacci(n) { if (n <= 1)="" return="" 1;="" fibonacci(n="" -="" +="" 2)="" ;="" }<="" pre="">=>
function fibonacci(n) { if (n <= 1)="" return="" 1;="" fibonacci(n="" -="" +="" 2)="" ;="" }<="" pre="">=>
let fibonacci = { [Symbol.iterator]() { let pre = 0, cur = 1 return { next () { [ pre, cur ] = [ cur, pre + cur ]; return { done: false, value: cur }; }, }; }, };
for (let n of fibonacci) { if (n > 1000) break; console.log(n); }
let fibonacci = { [Symbol.iterator]() { let pre = 0, cur = 1 return { next () { [ pre, cur ] = [ cur, pre + cur ]; return { done: false, value: cur }; }, }; }, };
let fibonacci = { *[Symbol.iterator]() { let pre = 0, cur = 1 for (;;) { [ pre, cur ] = [ cur, pre + cur ]; yield cur; } }, };
let *fibonacci = { let pre = 0, cur = 1 for (;;) { [ pre, cur ] = [ cur, pre + cur ]; yield cur; } };
function range(start, end, step) { const range = []; while (start < end) { range.push(start); start += step; } return range; } for (let i of range(0, 10, 2)) { console.log(i) // 0, 2, 4, 6, 8 }
function *range(start, end, step) { while (start < end) { yield start start += step } } for (let i of range(0, 10, 2)) { console.log(i) // 0, 2, 4, 6, 8 }
async function *getShifts() {} while (true) { this.buffer = await this.getNextPage(); if (this.buffer) { while(this.buffer.length) { yield this.buffer.shift(); } } else { return false; } } }
this.buffer = await this.getNextPage(); if (this.buffer) { while(this.buffer.length) { yield this.buffer.shift(); if (this.buffer.length < 10) { this.buffer.push( ...await this.getNextPage() ); } } } else { return false; }