summaryrefslogtreecommitdiffstats
path: root/devtools/client/debugger/test/mochitest/examples/preview.js
blob: fb4b08e5217cf9ec04820ac582681d612a696ceb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */

function empties() {
  const a = "";
  const b = false;
  const c = undefined;
  const d = null;
  debugger;
}

function smalls() {
  const a = "...";
  const b = true;
  const c = 1;
  const d = [];
  const e = {};
  debugger;
}

function objects() {
  const obj = {
    foo: 1,
  };

  const empty = Object.create(null);
  const foo = obj?.foo;

  debugger;
}

function largeArray() {
  const bs = [];
  for (let i = 0; i <= 100; i++) {
    bs.push({ a: 2, b: { c: 3 } });
  }
  debugger;
}

function classPreview() {
  class Foo {
    x = 1;
    #privateVar = 2;
    static #privateStatic = { first: "a", second: "b" };
    #privateMethod() {
      return this.#privateVar;
    }
    breakFn() {
      let i = this.x * this.#privateVar + Foo.#privateStatic;
      if (#privateVar in this && this.#privateVar !== 0) {
        i = i * 2;
      }
      const y = {
        hello: {
          foo: "foo",
           bar: "bar"
        },
      };
      y;
      debugger;
    }
  }
  const foo = new Foo();
  foo.breakFn();
}