数据类型 原始类型的方法
在 JavaScript 中有 7 种原始类型:string,number,bigint,boolean,symbol,null 和 undefined。
当作对象的原始类型
以下是 JavaScript 创建者面临的悖论:
人们可能想对诸如字符串或数字之类的原始类型执行很多操作。最好将它们作为方法来访问。
原始类型必须尽可能的简单轻量。
而解决方案看起来多少有点尴尬,如下:
原始类型仍然是原始的。与预期相同,提供单个值
JavaScript 允许访问字符串,数字,布尔值和 symbol 的方法和属性。
为了使它们起作用,创建了提供额外功能的特殊“对象包装器”,使用后即被销毁。
“对象包装器”对于每种原始类型都是不同的,它们被称为 String、Number、Boolean 和 Symbol。因此,它们提供了不同的方法。
例如,字符串方法 str.toUpperCase() 返回一个大写化处理的字符串。
用法演示如下:
let str = "Hello";
alert( str.toUpperCase() ); // HELLO
很简单,对吧?以下是 str.toUpperCase() 中实际发生的情况:
字符串 str 是一个原始值。因此,在访问其属性时,会创建一个包含字符串字面值的特殊对象,并且具有有用的方法,例如 toUpperCase()。
该方法运行并返回一个新的字符串(由 alert 显示)。
特殊对象被销毁,只留下原始值 str。
数字有其自己的方法,例如,toFixed(n) 将数字舍入到给定的精度:
let n = 1.23456;
alert( n.toFixed(2) ); // 1.23
另一方面,调用不带 new(关键字)的 String/Number/Boolean 函数是完全理智和有用的。它们将一个值转换为相应的类型:转成字符串、数字或布尔值(原始类型)。
例如,下面完全是有效的:
let num = Number("123"); // 将字符串转成数字