찾다

 >  Q&A  >  본문

javascript - js에 실제 빈 객체가 없는 이유는 무엇입니까?

객체 리터럴 메서드를 사용하여 js에서 객체를 생성합니다. var obj={}; Object 생성자가 호출되지 않았는데 왜 여전히 인스턴스인가요? 그러한 객체는 빈 객체여야 하지 않나요? 프로토타입이 Object.prototype인 이유는 무엇인가요?

世界只因有你世界只因有你2834일 전595

모든 응답(4)나는 대답할 것이다

  • 我想大声告诉你

    我想大声告诉你2017-05-19 10:26:47

    var obj = {};는 var obj = Object.create({});

    과 동일한 약식 메서드입니다.

    Object.create(null); 빈 개체일 수 있습니다.

    회신하다
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-19 10:26:47

    1. 이에 대해서는 Brendan Eich에게 물어보세요. Brendan Eich

    2. 我觉得你先说说,你定义的所谓空对象是啥。

    3. 按照你的题目描述,我猜你所谓的空对象应该是指最原始的那个对象原型吧?这个东西是有的,它是null

    당신이 정의한 소위 빈 객체가 무엇인지 먼저 설명해야 할 것 같습니다. 🎜🎜 🎜🎜제목 설명에 따르면 빈 개체라고 부르는 것이 원래 개체 프로토타입을 참조해야 하는 것 같은데요, 그렇죠? 이것은 존재하고 null이며 모든 객체의 프로토타입 체인의 끝입니다. 🎜🎜 🎜

    회신하다
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-19 10:26:47

    js에 빈 개체가 있습니다

    으아아아

    진실을 검증하는 유일한 기준은 실천입니다

    회신하다
    0
  • 大家讲道理

    大家讲道理2017-05-19 10:26:47

    개념적으로 말하면, 객체는 모든 객체의 루트 객체로 정의되며 "객체 지향" 개념의 가장 기본 단위(참조)입니다. 이를 제거하면 전체 개념이 붕괴됩니다. 분자/원자?

    new로 생성하거나 리터럴을 사용하더라도 컴파일러는 자동으로 객체의 조상을 식별합니다

    그렇습니다. null 예외입니다. 이 것 자체는 특수한 경우입니다. js는 이를 처음에 객체로 취급하고, 이후 Object.create(null)에서 소위 "빈 객체" 현상이 나타납니다. 처음에 정의된 값이 특별한 값인 경우 Object.create(null)와 같은 것은 없습니다. 따라서 제가 이해한 바에 따르면 이 "빈 객체"는 자체 일관성이 있고 정의에 연결되어 있으므로 "객체"로 분류되어서는 안 됩니다. - 지향'이라는 컨셉으로.

    회신하다
    0
  • 취소회신하다