proxyenumbug.js 855 B

1234567891011121314151617181920
  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. var obj = {foo:1, bar: 2};
  6. var iterator = Reflect.enumerate(obj);
  7. var passed = 1;
  8. if (typeof Symbol === 'function' && 'iterator' in Symbol) {
  9. passed &= Symbol.iterator in iterator;
  10. }
  11. var item = iterator.next();
  12. passed &= item.value === 'foo' && item.done === false;
  13. item = iterator.next();
  14. passed &= item.value === 'bar' && item.done === false;
  15. item = iterator.next();
  16. passed &= item.value === undefined && item.done === true;
  17. if (passed) {
  18. WScript.Echo("PASS");
  19. }