Comments (4)
Here's my input/output in the buble REPL, by the way.
// Nope.
Array(10).fill(0);
// Yep, once we transpile it.
Array(...Array(10)).map(() => 0);
// Yep, ES5 fill.
Array.apply(void 0, Array(10)).map(function () { return 0; });
output:
// Nope.
Array(10).fill(0);
// Yep, once we transpile it.
Array.apply(void 0, Array(10)).map(function () { return 0; });
// Yep, ES5 fill.
Array.apply(void 0, Array(10)).map(function () { return 0; });
from buble.
@bradstaff Array.fill is a part of standard (or not?) library. Buble handles only special syntaxes which cannot be handled with es5. Just use one of dozens polyfills for that.
from buble.
There are two parts of ES2015+ — syntax features and environment features. Syntax features are things like arrow functions and shorthand properties — stuff that's invalid ES5. Environment features are things like 'what methods exist on Array.prototype
?' — e.g. fill
.
Bublé is only concerned with syntax — taking invalid ES5 and transforming it into valid ES5 — because you can't polyfill syntax.
It can't reliably determine from reading thing.fill(x)
in your source code that thing
is an array, so it doesn't bother trying to fix the environment. So @TrySound, who beat me to the punch while I was writing this comment, is right — you'll need to add a polyfill.
from buble.
Thank you for the clarification y'all!
from buble.
Related Issues (20)
- New magic-string 0.25.7 makes two tests fail in buble HOT 11
- Please update acorn to 5.7.4, 6.4.1, or 7.1.1 to resolve vulnerability in acorn HOT 2
- class extends expression not transpiled HOT 1
- Number range expression is not compiled accordingly HOT 1
- Add support for Vue render functions
- compile error with for...of HOT 2
- Function declarations within blocks are transpiled into code that breaks on some pre-ES2015 targets
- A bug when destructuring in a for .. of loop HOT 1
- super relies on name of base class HOT 5
- async/await -> using array method yields error
- Invalid output when a computed property follows a property with an arrow function as value
- Mutated variables in pseudo-block-scope loops aren't written back when using `continue`
- Must call super constructor in derived class before accessing 'this' or returning from derived constructor
- Support optional chaining. HOT 5
- Security policy questions
- Jsx convertion has some problem HOT 1
- Wrong variable name in block scope
- Remove unicode regexp support and reduce50%+ bundle size.
- Make Buble ignore JSX?
- Please support setPrototypeOf instead of __proto__ HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from buble.