I am using “for...of” in many places in my Javascript code which is a new technology, part of Javascript’s new specification (ECMAScript 2015 (E56) standard). "for...of" is supported in Chrome, Safari and Firefox. Though, IE doesn’t yet support this new feature (See this link). What would be my best approach to support these 4 main browsers - do I revert to "for in/for loop" or do I use browser-sniffing code or is there a better hack to be able to both use some hybrid "for...of" and "for...in"? This is not a repeat of this question here: link_here because I am aware that IE does not support "for...of". What I am looking for is if there is a hack to still use it and still support all the 4 browsers I listed?
for...of - JavaScript keyword Internet Explorer work-around
386 Views Asked by Kapil Vyas At
2
There are 2 best solutions below
0
balrob
On
If you want back compat support for "for...of" your only choice is a compiler (transpiler). If you look here: https://kangax.github.io/compat-table/es6/ the well known compilers, and the level of support they provide, are well documented.
Related Questions in JAVASCRIPT
- Angular Show All When No Filter Is Supplied
- Why does a function show up as not defined
- I count the time the user takes to solve my quiz using Javascript but I want the same time displayed on another page
- Set "More" "Less" font size
- Using pagination on a table in AngularJS
- How to sort these using Javascript or Jquery Most effectively
- how to fill out the table with next values in array with one button
- State with different subviews
- Ajax jQuery firing multiple time display event for the same result
- Getting and passing MVC Model data to AngularJS controller
- Disable variable in eval
- javascript nested loops waiting for user input
- .hover() seems to overwrite .click()
- How to sort a multi-dimensional array by the second array in descending order?
- How do I find the fonts that are not loading in a CORS situation ( MoovWeb )?
Related Questions in PERFORMANCE
- Slow performance on ipad erasing image
- Can Apache Ant be told to cache its XML files?
- What are the pros and cons of the picture element?
- DB candidate as CouchDB/Schema replacement
- python member str performance too slow
- Split a large query (2 days) into pieces to increase the speed in Postgres
- Use GUI displayed results of SQL query vs new queries?
- fastest way to map a large number of longs
- Bash regular expression execution hangs on long expressions
- Why is calling a function so slow in Javascript?
- Performance of element-compare in java collections
- "Capture GPU Frame" in XCode -- iOS only?
- Efficiency penalty of initializing a struct/class within a loop
- Change the rotating speed of the circle when the mouse moves using javascript
- Replace foreach to make loop into queryable
Related Questions in CROSS-BROWSER
- How can I get a button on the side of a text box to be perfectly aligned all the time?
- Opening Browser Instances from different Vendors
- Firefox not recognizing background-size: cover with Cycle2 Slider injections
- CSS Works in Chrome but not Firefox
- Page cached tracking using javascript
- Browser compatibility of Polymer
- IE compatibility Changing is not working in Windows10 using meta tag
- Cross browser kerning properly technique
- Chrome and Opera refuse to transition from flex: 0 to flex: 1
- How often do Apple update fixes for Safari on iOS?
- Different text align behavior for firefox
- video not getting in ie and mozilla in bootstrap framework
- Translation with Zend Translate only works in OSX Firefox, no others browsers
- Custom cursor not working in IE8
- Get innerWidth of Bootstrap button (crossbrowser)
Related Questions in COMPATIBILITY
- Browser compatibility of Polymer
- LiveCycle dynamic PDF - how to enforce Acrobat version?
- Why does Microsoft Edge (formerly Project Spartan) prompt to open this website in Internet Explorer?
- ios Swift: looking for a cross compatible method to Java's Random() PRNG that has identical output
- Points to be looked into while upgrading from redis-2.8.19 to redis-3.0.2
- Is there a definitive way to port a Cordova App to Windows 8? (Unsafe code)
- for...of - JavaScript keyword Internet Explorer work-around
- How to check if console/font supports Unicode?
- Appropriate way to use Android Support Library
- Cxx11 ABI for a single function call?
- SVG foreignObject doesn,t transform in Chrome
- how to make web service changes backward compatible
- Running on MARS but not running on Qtspim
- Clang or GCC compiler for c++ 11 compatibility programming on Windows?
- Wordpress Jupiter Chrome CSS issue
Related Questions in ECMASCRIPT-6
- React, ES6 - getInitialState was defined on a plain JavaScript class
- jspm does not transpile code from ES6 to ES5
- XHR progress event microtask queue
- Compiling ES6 arrow functions to Es5 using Babel.js
- How to properly bind current object context in ES6 using babelify
- Mixins for ES6 classes, transpiled with babel
- How do I support jasmine and es6 syntax in Visual studio Code?
- can es6 class have public properties as well as functions?
- is there any way to obtain a reference to (and use) an es6/2015 import in the same expression?
- ES6 classes with Angular 1 DI issue with $inject
- Recursive Tree Walk with ES6 Promise
- Do I have to call super.componentDidUpdate in React?
- How to check if a variable is an ES6 class declaration?
- The this-variable is the Window object or undefined in the then-method of a promise
- Webstorm: Debugging Mocha tests written in ES6
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
You can add the Traceur compiler:
It should work even on IE9.