pop2.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. //-------------------------------------------------------------------------------------------------------
  2. // Copyright (C) Microsoft. All rights reserved.
  3. // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
  4. //-------------------------------------------------------------------------------------------------------
  5. function write(v) { WScript.Echo(v); }
  6. var n = 5;
  7. function InitObject(obj) {
  8. for (var i=0; i<n; i++) {
  9. obj[i] = i * i + 1;
  10. }
  11. obj.length = n;
  12. return obj;
  13. }
  14. function TestPop(obj) {
  15. write(">>> Start pop test for object: " + obj);
  16. for (var i=0; i<n+2; i++) {
  17. var x = Array.prototype.pop.call(obj);
  18. write(i + " iteration. Poped:" + x + " obj.length:" + obj.length);
  19. }
  20. write("<<< Stop pop test for object: " + obj);
  21. }
  22. var testList = new Array(new Number(10) , new Boolean(false));
  23. for (var i=0;i<testList.length;i++) {
  24. TestPop(InitObject(testList[i]));
  25. }
  26. function popTest2()
  27. {
  28. var arrObj0 = {};
  29. var func0 = function(argArr2){
  30. argArr2[7] = 1;
  31. }
  32. var ary = new Array(10);
  33. ary[1] = 1;
  34. ary.length = 2;
  35. ary.pop();
  36. func0(ary);
  37. WScript.Echo("ary[1] = " + (ary[1]));
  38. };
  39. popTest2();
  40. Array.prototype[0] = 10;
  41. function popTest3() {
  42. (function () {
  43. window = [,];
  44. }());
  45. switch (window.pop()) {
  46. case window:
  47. }
  48. }
  49. popTest3();
  50. popTest3();