| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- //-------------------------------------------------------------------------------------------------------
- // 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(v) { WScript.Echo(v); }
- var n = 5;
- function InitObject(obj, len, mult, putUndefined) {
- for (var i=0; i<n; i++) {
- if ((i % mult) == 0)
- {
- obj[i] = i * i + 1;
- }
- else
- {
- if (putUndefined)
- {
- obj[i] = undefined;
- }
- }
- }
- obj[len-1] = "last";
- obj.length = len;
- return obj;
- }
- function ToString(obj) {
- var str = "";
- for (var i=0; i<obj.length; i++)
- str += obj[i] + ",";
- return str + ":: Length: " + obj.length;
- }
- function TestReverse(obj) {
- write(">>> Start reverse test for object: " + obj);
- write("Before Orig: " + ToString(obj));
- var res = Array.prototype.reverse.call(obj);
- write("After Orig: " + ToString(obj));
- write("Result : " + ToString(res));
- write("<<< Stop reverse test for object: " + obj);
- }
- function Main(putUndefined) {
- var testList = new Array(new Array(), new Array(), new Array(), new Array(), new Array());
- for (var i=0;i<testList.length;i++) {
- TestReverse(InitObject(testList[i], n + i, i+1, putUndefined));
- }
- testList = new Array(new Object(), new Object(), new Object(), new Object(), new Object());
- for (var i=0;i<testList.length;i++) {
- TestReverse(InitObject(testList[i], n + i, i+1, putUndefined));
- }
- testList = new Array(new Number(10), new Number(10), new Number(10), new Number(10), new Number(10));
- for (var i=0;i<testList.length;i++) {
- TestReverse(InitObject(testList[i], n + i, i, putUndefined));
- }
- testList = new Array(new Boolean(false), new Boolean(false), new Boolean(false), new Boolean(false), new Boolean(false));
- for (var i=0;i<testList.length;i++) {
- TestReverse(InitObject(testList[i], n + i, i, putUndefined));
- }
- }
- function ProtoCheck() {
- Array.prototype[1]=12;
- var arr=new Array(2)
- write(arr.reverse())
- Object.prototype[1]=10;
- var o=new Object();
- o.length = 2;
- var o1 = Array.prototype.reverse.call(o);
- write(Array.prototype.join.call(o));
- write(Array.prototype.join.call(o1));
- }
- Main(false);
- Main(true);
- ProtoCheck();
|