var isPacked = getSelfHostedValue("IsPackedArray" );
function test() {
var arr;
// basic
arr = [];
assertEq(isPacked(arr), true );
arr[0 ] = 0 ;
assertEq(isPacked(arr), true );
arr[2 ] = 2 ;
assertEq(isPacked(arr), false );
// delete
arr = [1 , 2 , 3 ];
assertEq(isPacked(arr), true );
delete arr[1 ];
assertEq(isPacked(arr), false );
// setting .length
arr = [1 ];
arr.length = 0 ;
assertEq(isPacked(arr), true );
arr.length = 1 ;
assertEq(isPacked(arr), false );
// slice
arr = [1 , 2 , , 3 ];
assertEq(isPacked(arr), false );
assertEq(isPacked(arr.slice(0 , 2 )), true );
assertEq(isPacked(arr.slice(0 , 3 )), false );
assertEq(isPacked(arr.slice(2 , 3 )), false );
assertEq(isPacked(arr.slice(3 , 4 )), true );
// splice
arr = [1 , 2 , 3 ];
assertEq(isPacked(arr.splice(0 )), true );
arr = [1 , , 2 ];
assertEq(isPacked(arr.splice(0 )), false );
arr = [1 , , 2 ];
assertEq(isPacked(arr.splice(0 , 1 )), true );
assertEq(arr.length, 2 );
assertEq(isPacked(arr.splice(0 , 1 )), false );
assertEq(arr.length, 1 );
assertEq(isPacked(arr.splice(0 , 1 )), true );
assertEq(arr.length, 0 );
assertEq(isPacked(arr.splice(0 )), true );
}
for (var i = 0 ; i < 5 ; i++) {
test();
}
Messung V0.5 in Prozent C=90 H=89 G=89
¤ Dauer der Verarbeitung: 0.1 Sekunden
¤
*© Formatika GbR, Deutschland