Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.3k views
in Technique[技术] by (71.8m points)

Cannot redefine property: a at Function.defineProperty?

这段代码会提示错误VM151:2 Uncaught TypeError: Cannot redefine property: a at Function.defineProperty,为什么不是输出a,b,c?

    let value = "a";
    Object.defineProperty(this, "a", {
      get() {
        let result = value;
        if (value === "a") {
          value = "b";
        } else if (value === "b") {
          value = "c";
        }
        return result;
      },
    });
    console.log(a,a,a);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

这个报错是因为你执行了两次(或以上)这段代码。刷新后重新执行就好了。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...