Почему в JavaScript «3 instanceof Number» == false, а «3..method ()» будет вызывать Number.prototype.method?

Учитывая, что литеральное число не является строго экземпляром Number, почему я могу вызывать методы-прототипы объектов Number (или String, или Boolean) для соответствующих литеральных объектов? Это стандартное поведение в браузерах?

Что именно происходит, когда это происходит? Я подозреваю, что он вызывает литерал в соответствующий тип перед вызовом метода, потому что, когда я проверяюtypeof this в методе он возвращает «объект», а не «число».

Ответы на вопрос(1)

Ваш ответ на вопрос