「这是我参与11月更文挑战的第27天,活动详情查看:2021最后一次更文挑战」
为了方便我就直接直奔主题
首先我们来聊聊什么是包装类
你应该听说过这么一句话:“JavaScript语言一切皆是对象”。其实不仅仅数组和函数是对象,我们知道的原始值(数值、字符串、布尔值),在一定条件下,也会转成对象,这种对象被称为“包装类对象”
当调用原始值的属性和方法时,js发现原始值根本没有属性和方法,你怎么调用呢?为了不然程序报错,于是它偷偷地将原始类型的变成了包装类对象,在调用这个新创建好的包装类对象的属性和方法执行,执行完后 偷偷的delete此对象。
了解了什么是包装类,接着来看Number.prototype上有哪些东西
- constructor属性: 返回Number原型的构造函数,即返回Number(){}
- toExponential方法:返回一个数的科学计数法的形式
- toFixed方法:将一个数转为指定位数的小数,返回这个小数对应的
字符串 - toLocaleString方法:返回一个数转换为本地字符串的形式
- toPrecision方法:用于将一个数转为指定位数的有效数字,返回字符串形式
- toString方法:返回一个数字的字符串形式;注意这里的toString不是Object身上的哦
- valueOf方法:用于返回一个 Number 对象的原始数字值
另外再来看Number这个构造函数本身有的静态属性(通过Number.直接调用的)有哪些:
- MAX_VALUE:可表示的最大的数
- MIN_VALUE:可表示的最小的数
- NEGATIVE_INFINITY:负无穷大,溢出时返回该值
- NaN:非数
- POSITIVE_INFINITY:正无穷大,溢出时返回该值
- prototype:原型属性;可以在原型上添加属性和方法
接着我们再来看Boolean身上的东西
Boolean的原型上也只有一个属性constructor和两个方法
- toString方法: 返回一个布尔值的字符串形式
- valueOf:返回一个Boolean对象的原始布尔值