04.eval_sm.js 1002 B

12345678910111213141516171819202122232425262728293031323334
  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. "use strict";
  6. function write(v) { WScript.Echo(v + ""); }
  7. var _myEval = eval;
  8. var scenario = [
  9. ["Assign to Eval", "eval = 1;"],
  10. ["Post ++ Eval", "eval++;"],
  11. ["Post -- Eval", "eval--;"],
  12. ["Pre ++ Eval", "++eval;"],
  13. ["Pre -- Eval", "--eval;"]
  14. ];
  15. var count = 0;
  16. (function test1() {
  17. write("Changing eval...");
  18. for (var i=0;i<scenario.length;++i) {
  19. try {
  20. _myEval(scenario[i][1]);
  21. } catch (e) {
  22. write("Exception: " + scenario[i][0]);
  23. continue;
  24. }
  25. write("Return: " + scenario[i][0]);
  26. }
  27. })();