string-spread.js 763 B

12345678910111213141516171819202122232425
  1. function testArray(arr) {
  2. return arr.length === 4 && arr[0] === "a" && arr[1] === "b" && arr[2] === "c" && arr[3] === "d";
  3. }
  4. test("spreading string literal", () => {
  5. expect(["a", ..."bc", "d"]).toEqual(["a", "b", "c", "d"]);
  6. });
  7. test("spreading string variable", () => {
  8. const s = "bc";
  9. expect(["a", ...s, "d"]).toEqual(["a", "b", "c", "d"]);
  10. });
  11. test("spreading string in object", () => {
  12. const obj = { a: "bc" };
  13. expect(["a", ...obj.a, "d"]).toEqual(["a", "b", "c", "d"]);
  14. });
  15. test("spreading empty string", () => {
  16. expect([..."", "a", ..."bc", ..."", "d", ...""]).toEqual(["a", "b", "c", "d"]);
  17. });
  18. test("spreading string objects", () => {
  19. expect([..."", ...[...new String("abc")], "d"]).toEqual(["a", "b", "c", "d"]);
  20. });