for-in.js (455B)
1 // for-in loops on Maps and Sets enumerate properties. 2 3 var test = function test(obj) { 4 assertEq(Object.keys(obj).length, 0); 5 6 var i = 0, v; 7 for (v in obj) 8 i++; 9 assertEq(i, 0); 10 11 obj.ownProp = 1; 12 assertEq(Object.keys(obj).join(), "ownProp"); 13 14 for (v in obj) 15 i++; 16 assertEq(i, 1); 17 assertEq(v, "ownProp"); 18 19 delete obj.ownProp; 20 }; 21 22 test(Map.prototype); 23 test(new Map); 24 test(Set.prototype); 25 test(new Set);