基本包装类型-Number,Boolean,String
-
基本包装类型
因为基本类型不是对象,本身不能调用属性和方法,为了便于操作基本类型,于是ECMAScript提供了三种特殊的引用类型:Boolean,Number,String。每当读取一个基本类型的值的时候,后台会创建一个对应的基本包装类型的对象,从而调用操作这些数据。
var str = 'hello world'; var str2 = str.substring(2); //str是基本类型 理论不可以调用方法实际上str在调用substring方法的时候,后台会完成以下处理:
- 创建一个String类型的一个实例
- 在实例上调用指定的方法
- 销毁这个实例
var str = new String('hello world'); var str2 = str.substring(2); str = null;自动创建的基本包装类型对象,只存在于一行代码的执行瞬间,然后就被销毁。这就不能在运行时为基本类型值添加属性和方法。
var str = 'hello world'; var str.color = '!'; console.log(str.color); // undefined //第二行创建的String对象在第三行代码执行之前就已经销毁了 -
Number类型
- Number是与数字值对应的引用类型。
var a = 3; var b = new Number(3); console.log(typeof a);//基本类型 number console.log(typeof b);//基本包装类型 Object Number console.log(typeof Number(b));//将包装类型转化为基本类型- toFixed( 数值 ) 保留几位小数 返回值是保留小数位的字符串
var num = 10; console.log(num.toFixed(2)); //'10.00'- 几种常用值
console.log(Number.NaN===window.NaN) //true console.log(Number.MAX_VALUE) //1.7976931348623157e+308 console.log(Number.MIN_VALUE)//5e-324 console.log(Number.NEGATIVE_INFINITY)//-Infinity console.log(Number.POSITIVE_INFINITY)//Infinity
JavaScript中,基本类型如Number, Boolean, String在特定场景下会转换为相应的基本包装类型,使得它们能调用方法。例如,当调用`str.substring(2)`时,系统会在幕后创建一个String对象,执行方法后再销毁。Number类型提供了如toFixed()方法来格式化数字。此外,还存在一些特殊值,如NaN, MAX_VALUE, MIN_VALUE等。需要注意的是,基本包装类型对象仅存在于一行代码的执行瞬间,无法持久添加属性和方法。
2370

被折叠的 条评论
为什么被折叠?



