trim.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  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. WScript.Echo("\uFEFFabc".trim());
  6. WScript.Echo("abc\u0009".trim());
  7. WScript.Echo("abc\u000B".trim());
  8. WScript.Echo("abc\u000C".trim());
  9. WScript.Echo("abc\u0020".trim());
  10. WScript.Echo("abc\u00A0".trim());
  11. WScript.Echo("abc\uFFFF".trim() == "abc\uFFFF");
  12. WScript.Echo("\u0009abc\u0009".trim());
  13. WScript.Echo(" \u0009abc \u0009".trim());
  14. WScript.Echo("\u000Babc\u000B".trim());
  15. WScript.Echo("\u000Cabc\u000C".trim());
  16. WScript.Echo("\u0020abc\u0020".trim());
  17. WScript.Echo("\u00A0abc\u00A0".trim());
  18. WScript.Echo("\uFEFFabc\uFEFF".trim());
  19. WScript.Echo("\u0009\u0009".trim() == "");
  20. WScript.Echo("\u000B\u000B".trim() == "");
  21. WScript.Echo("\u000C\u000C".trim() == "");
  22. WScript.Echo("\u0009abc".trim());
  23. WScript.Echo("\u0020\u0020".trim() == "");
  24. WScript.Echo("\u00A0\u00A0".trim() == "");
  25. WScript.Echo("\uFEFF\uFEFF".trim() == "");
  26. WScript.Echo("ab\u0009c".trim());
  27. WScript.Echo("ab\u000Bc".trim());
  28. WScript.Echo("ab\u000Cc".trim());
  29. WScript.Echo("ab\u0020c".trim());
  30. WScript.Echo("ab\u0085c".trim());
  31. WScript.Echo("\u000Babc".trim());
  32. WScript.Echo("ab\u00A0c".trim());
  33. WScript.Echo("ab\u200Bc".trim() == "ab\u200Bc");
  34. WScript.Echo("ab\uFEFFc".trim() == "ab\uFEFFc");
  35. WScript.Echo("\u000Aabc".trim());
  36. WScript.Echo("\u000Dabc".trim());
  37. WScript.Echo("\u2028abc".trim());
  38. WScript.Echo("\u2029abc".trim());
  39. WScript.Echo("abc\u000A".trim());
  40. WScript.Echo("abc\u000D".trim());
  41. WScript.Echo("abc\u2028".trim());
  42. WScript.Echo("\u000Cabc".trim());
  43. WScript.Echo("abc\u2029".trim());
  44. WScript.Echo("\u000Aabc\u000A".trim());
  45. WScript.Echo("\u000Dabc\u000D".trim());
  46. WScript.Echo("\u2028abc\u2028".trim());
  47. WScript.Echo("\u2029abc\u2029".trim());
  48. WScript.Echo("\u000A\u000A".trim() == "");
  49. WScript.Echo("\u2028\u2028".trim() == "");
  50. WScript.Echo("\u000D\u000D".trim() == "");
  51. WScript.Echo("\u2029abc as a multiline string".trim());
  52. WScript.Echo("\u0020abc".trim());
  53. WScript.Echo(" ".trim() == "");
  54. WScript.Echo("\u00A0abc".trim());
  55. WScript.Echo("\uFEFFabc".trimLeft());
  56. WScript.Echo("abc\u0009".trimRight());
  57. WScript.Echo("abc\u000B".trimRight());
  58. WScript.Echo("abc\u000C".trimRight());
  59. WScript.Echo("abc\u0020".trimRight());
  60. WScript.Echo("abc\u00A0".trimRight());
  61. WScript.Echo("abc\uFFFF".trimRight() == "abc\uFFFF");
  62. WScript.Echo("\u0009\u0009".trimLeft() == "");
  63. WScript.Echo("\u0009\u0009".trimRight() == "");
  64. WScript.Echo("\u000B\u000B".trimLeft() == "");
  65. WScript.Echo("\u000C\u000C".trimLeft() == "");
  66. WScript.Echo("\u000B\u000B".trimRight() == "");
  67. WScript.Echo("\u000C\u000C".trimRight() == "");
  68. WScript.Echo("\u0009abc".trimLeft());
  69. WScript.Echo("\u0020\u0020".trimRight() == "");
  70. WScript.Echo("\u00A0\u00A0".trimRight() == "");
  71. WScript.Echo("\uFEFF\uFEFF".trimRight() == "");
  72. WScript.Echo("ab\u0009c".trimRight());
  73. WScript.Echo("ab\u000Bc".trimRight());
  74. WScript.Echo("ab\u000Cc".trimRight());
  75. WScript.Echo("ab\u0020c".trimRight());
  76. WScript.Echo("ab\u0085c".trimRight());
  77. WScript.Echo("\u000Babc".trimLeft());
  78. WScript.Echo("ab\u00A0c".trimRight());
  79. WScript.Echo("ab\u200Bc".trimRight() == "ab\u200Bc");
  80. WScript.Echo("ab\uFEFFc".trimLeft() == "ab\uFEFFc");
  81. WScript.Echo("\u000Aabc".trimLeft());
  82. WScript.Echo("\u000Dabc".trimLeft());
  83. WScript.Echo("\u2028abc".trimLeft());
  84. WScript.Echo("\u2029abc".trimLeft());
  85. WScript.Echo("abc\u000A".trimRight());
  86. WScript.Echo("abc\u000D".trimRight());
  87. WScript.Echo("a\u2028".trimRight());
  88. WScript.Echo("\u000Cabc".trimLeft());
  89. WScript.Echo("abc\u2029".trimRight());
  90. WScript.Echo("\u000A\u000A".trimRight() == "");
  91. WScript.Echo("\u2028\u2028".trimLeft() == "");
  92. WScript.Echo("\u000D\u000D".trimRight() == "");
  93. WScript.Echo("\u2029abc as a multiline string".trimLeft());
  94. WScript.Echo("\u0020abc".trimLeft());
  95. WScript.Echo(" ".trimRight() == "");
  96. WScript.Echo("\u00A0abc".trimLeft());
  97. //implicit calls
  98. var a = 1;
  99. var b = 2;
  100. var obj = {toString: function(){ a=3; return "Hello World";}};
  101. a = b;
  102. Object.prototype.split = String.prototype.split;
  103. var f = obj.split();
  104. WScript.Echo (a);