javascript - Javascript 中的原始类型如何具有方法和属性?
问题描述
var num1 = new Number(5);
typeof(num1); //returns "object"
num1.toString(); //returns "5"
我知道num1
作为一个对象有一个属性.__proto__
,它可以.toString()
通过原型(.__proto__
)链访问它。
var num = 5;
typeof(num); //returns "number"
num.toString(); //returns "5"
在上述情况下, num 是原始类型number
。这意味着它不会有任何属性和方法。那么它如何能够访问.toString()
方法呢?
解决方案
这意味着它不会有任何属性和方法。
当涉及到原语时,Javascript 有一个称为强制的属性。它默默地将原语转换为任何对象,然后访问新构造的数字对象的原型方法。
推荐阅读
- python-3.x - 使用 Python 的词云
- java - 调整图像大小?
- android - 谷歌地图的自定义信息窗口与项目点击与 kotlin
- python - 取消锐化/平滑图像中人的身体边界
- javascript - vanilla js是否可以在文本节点旁边动态添加按钮元素?
- python-2.7 - SoftLayer API:订购一个 128 子网
- javascript - 如何使用只读文本框角度显示垂直图像?
- python - 每个月如何做子图?
- java - 如何避免这个错误运行maven时没有这样的文件或目录
- java - AES/CBC/PKCS5Padding 加密结果在 PHP 和 Java 中不同