JSON.stringify-order.js 552 B

123456789101112131415161718192021222324252627282930
  1. test("basic functionality", () => {
  2. let o = {
  3. key1: "key1",
  4. key2: "key2",
  5. key3: "key3",
  6. };
  7. Object.defineProperty(o, "defined", {
  8. enumerable: true,
  9. get() {
  10. o.prop = "prop";
  11. return "defined";
  12. },
  13. });
  14. o.key4 = "key4";
  15. o[2] = 2;
  16. o[0] = 0;
  17. o[1] = 1;
  18. delete o.key1;
  19. delete o.key3;
  20. o.key1 = "key1";
  21. expect(JSON.stringify(o)).toBe(
  22. '{"0":0,"1":1,"2":2,"key2":"key2","defined":"defined","key4":"key4","key1":"key1"}'
  23. );
  24. });