JSFiddle - React, Tailwind, and code Playground
HTML
<pre id="output"></pre>
<script>
var buf = '';
function output(string, indent) {
if (indent)
buf += '\t';
buf += string;
buf += '\n';
}
</script>
JavaScript
function notAShimJustAFunction(obj) {
var iterator = new Object();
iterator[Symbol.iterator] = function() {
var keys = Object.keys(obj)[Symbol.iterator]();
var output;
return {next:function() {
if (!(output = keys.next()).done)
output.value = [output.value, obj[output.value]];
return output;
}};
};
return iterator;
}
var ordinaryObject = {well:'hello', there:'!'};
for (let [key, value] of notAShimJustAFunction(ordinaryObject))
output(key + ':' + value, true);
document.getElementById('output').innerHTML = buf;