//------------------------------------------------------------------------------------------------------- | |
// Copyright (C) Microsoft. All rights reserved. | |
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. | |
//------------------------------------------------------------------------------------------------------- | |
function write(args) | |
{ | |
if (typeof (WScript) == "undefined") | |
print(args); | |
else | |
WScript.Echo(args); | |
} | |
var a = [11,22,33,44]; | |
a.x = "a.x"; | |
a.y = "a.y"; | |
a.z = "a.z"; | |
write("Scenario:1 - Adding new array indexes while enumerating expandos") | |
for( var i in a) | |
{ | |
if(i == "y") | |
{ | |
a[5] = 55; | |
a[6] = 66; | |
} | |
write("Index:" + i + " Value:" + a[i]); | |
} | |
write("Scenario:2 - Adding new array expandos while enumerating array for second time") | |
for( var i in a) | |
{ | |
if(i == "z") | |
{ | |
a[7] = 77; | |
a[9] = 99; | |
} | |
if(i == "7") | |
{ | |
a.xx = "a.xx"; | |
a.yy = "a.yy"; | |
} | |
write("Index:" + i + " Value:" + a[i]); | |
} | |
write("Scenario:3 - Adding new array expandos while enumerating Object for second time") | |
var b = [11,22,33,44]; | |
b.x = "b.x"; | |
b.y = "b.y"; | |
b.z = "b.z"; | |
for( var i in b) | |
{ | |
if(i == "x") | |
{ | |
b[5] = 55; | |
b[7] = 77; | |
} | |
if(i == "7") | |
{ | |
b.xx = "b.xx"; | |
b.yy = "b.yy"; | |
} | |
if(i == "xx") | |
{ | |
b[9] = 99; | |
b[10] = 1010; | |
} | |
if(i == "9") | |
{ | |
b.zz = "b.zz"; | |
} | |
write("Index:" + i + " Value:" + b[i]); | |
} | |
write("Scenario:3 - Adding new array expandos while enumerating Object for second time") | |
var b = [11,22,33,44]; | |
b.x = "b.x"; | |
b.y = "b.y"; | |
b.z = "b.z"; | |
for( var i in b) | |
{ | |
if(i == "x") | |
{ | |
b[5] = 55; | |
b[7] = 77; | |
} | |
if(i == "7") | |
{ | |
b.xx = "b.xx"; | |
b.yy = "b.yy"; | |
} | |
if(i == "xx") | |
{ | |
b[9] = 99; | |
b[10] = 1010; | |
} | |
if(i == "9") | |
{ | |
b.zz = "b.zz"; | |
} | |
write("Index:" + i + " Value:" + b[i]); | |
} | |
write("Scenario:4 - random additions"); | |
var d = [1]; | |
var counter = 0; | |
for (var i in d) | |
{ | |
if(counter == 25) | |
{ | |
break; | |
} | |
if(counter%2 == 1) | |
{ | |
d[counter*counter] = counter*counter; | |
} | |
else | |
{ | |
d["x"+counter] = "d.x"+counter; | |
} | |
write("Index:" + i + " Value:" + d[i]); | |
counter++; | |
} |