原始类型的方法
- 7种原始类型:
string
,number
,bigint
,boolean
,symbol
,null
和undefined
。 - 对象
- 除了
null
和undefined
以外的原始类型都提供了许多有用的方法 - 形式上,构造器方法,内置方法通过临时对象工作
实例
- 原始对象不是对象,不能额外存储数据
let str = "hello";
str.test = 5;
alert(str.test);
//问? 返回结果是什么
// (1)undefined(非严格模式)
// (2)报错(严格模式)
// 分析:
// 1. 当我们访问str属性时,一个‘对象包装器‘被创建
// 2. 严格模式下,写入内容会报错
// 3. 否则,会执行属性操作,对象获得test属性,但使用完’对象包装器消失‘,因此str并没有这个属性
数字类型
number有两种类型
- js中常规数字以64位的格式IEEE-754存储,也就是“双精度浮点数”,常规数字不能超过
2e53
或小于-2e53
。 - BigInt数字,表示任意长度的整数
编写数字的更多方法
- 表示10亿
let billion = 1000000000;
let billion = 10e9;
let billion = 1bn;
- 进制
- 16进制:
0xff
,一般用于表示颜色,编码字符等 - 8进制:
0o377
,八进制255 - 2进制:
0b11111111
,二进制255 - 其他进制使用,
parseInt
- 16进制:
toString(base)
- 返回给定
base
进制数字系统中num
的字符串表示形式。
//例子
let num = 255;
alert(num.toString(16)); // ff
alert(num.toString(2)); // 11111111
base
范围可以从2
到36
。默认情况下是10
。base=36 是最大进制,数字可以是
0..9
或A..Z
。例如,做一个短的URL,可以使用基数为36的数字系统表示alert( 123456..toString(36)); //2n9c //也可写为 (123456).toString(36);
- 使用两点调用一个方法:注意,数字后一个点表示后面是小数部分,两个点就表明无小数部分,直接调用后面的方法
舍入
- 对数字进行舍入(rounding)的内建函数
Math.floor
:向下舍入Math.ceil
:向上舍入Math.round
:向最近的整数舍入Math.trunc
:移除小数点后的内容,不舍入