String.prototype.startsWith.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. load("test-common.js");
  2. try {
  3. var s = "foobar";
  4. assert(s.startsWith("f") === true);
  5. assert(s.startsWith("fo") === true);
  6. assert(s.startsWith("foo") === true);
  7. assert(s.startsWith("foob") === true);
  8. assert(s.startsWith("fooba") === true);
  9. assert(s.startsWith("foobar") === true);
  10. assert(s.startsWith("foobar1") === false);
  11. assert(s.startsWith("f", 0) === true);
  12. assert(s.startsWith("fo", 0) === true);
  13. assert(s.startsWith("foo", 0) === true);
  14. assert(s.startsWith("foob", 0) === true);
  15. assert(s.startsWith("fooba", 0) === true);
  16. assert(s.startsWith("foobar", 0) === true);
  17. assert(s.startsWith("foobar1", 0) === false);
  18. assert(s.startsWith("foo", []) === true);
  19. assert(s.startsWith("foo", null) === true);
  20. assert(s.startsWith("foo", undefined) === true);
  21. assert(s.startsWith("foo", false) === true);
  22. assert(s.startsWith("foo", true) === false);
  23. assert(s.startsWith("foo", "foo") === true);
  24. assert(s.startsWith("foo", -1) === true);
  25. assert(s.startsWith("foo", 42) === false);
  26. assert(s.startsWith("bar", 3) === true);
  27. assert(s.startsWith("bar", "3") === true);
  28. assert(s.startsWith("bar1", 3) === false);
  29. assert(s.startsWith() === false);
  30. assert(s.startsWith("") === true);
  31. assert(s.startsWith("", 0) === true);
  32. assert(s.startsWith("", 1) === true);
  33. assert(s.startsWith("", -1) === true);
  34. assert(s.startsWith("", 42) === true);
  35. console.log("PASS");
  36. } catch (e) {
  37. console.log("FAIL: " + e);
  38. }