JavaScript标准内置对象
qingheluo2016-12-16清河洛391
标准对象就是指在Javascripr引擎内部已经定义的,可以在全局直接使用的对象global对象是一个特别的对象,这个对象是不存在的,不属于任何其他对象的属性和方法,都属于它的属性和方法,所以,本质上并不存在全局变量和全局函数,所有在全局作用域定义的变量和函数,都是global对象的属性和方法因为没有定义怎么调用global对象,所以,"Global.属性"或者"Global.方法()"都是无效的,Web浏览器将global作为window对象的一部分加以实现window对象中包含所有Javascript的内置标准对象和环境API标准内置对象包含一、值属性全局属性返回一个简单值,这些值没...
标准对象就是指在Javascripr引擎内部已经定义的,可以在全局直接使用的对象
global对象是一个特别的对象,这个对象是不存在的,不属于任何其他对象的属性和方法,都属于它的属性和方法,所以,本质上并不存在全局变量和全局函数,所有在全局作用域定义的变量和函数,都是global对象的属性和方法
因为没有定义怎么调用global对象,所以,"Global.属性"或者"Global.方法()"都是无效的,Web浏览器将global作为window对象的一部分加以实现
window对象中包含所有Javascript的内置标准对象和环境API
标准内置对象包含
一、值属性
全局属性返回一个简单值,这些值没有自己的属性和方法
Infinity、NaN、undefined、globalThis(指向window对象)
二、函数属性
全局函数可以直接调用,不需要在调用时指定所属对象,执行结束后会将结果直接返回给调用者
eval(str):将str作为脚本代码执行
uneval():
isFinite(num):确定num是否在规定范围内
isNaN(num):确定num是否为NaN
parseFloat(val):转换为浮点数
parseInt(val):转换为10进制整数
encodeURI(str):编码url中的字符
以下字符不会被编码
; , / ? : @ & = + $ #
大小写字母 数字 - _ . ! ~ * ' ( )
decodeURI(str):解码由encodeURI()创建的url字符串
encodeURIComponent(str):编码url中的字符
以下字符不会被编码
大小写字母 数字 - _ . ! ~ * ' ( )
decodeURIComponent(str):解码由decodeURIComponent()创建的url字符串
三、基本对象
基本对象是定义或使用其他对象的基础
Object
Function
Boolean
Symbol
错误对象
错误对象是一种特殊的基本对象。有多种具体的错误类型
Error、AggregateError、EvalError、
InternalError、RangeError、ReferenceError、
SyntaxError、TypeError、URIError
四、数字对象
Number、BigInt、Math
Math内置对象拥有一些数学常数属性和数学函数方法
Math不是一个函数对象(构造函数),Math的所有属性与方法都是静态的
Math用于Number类型,不支持BigInt
属性
Math.E:欧拉常数,自然对数的底数E,约2.718
Math.LN2:2的自然对数,约0.693
Math.LN10:10的自然对数,约2.303
Math.LOG2E:以2为底的E的对数,约1.443
Math.LOG10E:以 10 为底的 E 的对数,约0.434
Math.PI:圆周率,约3.14159
Math.SQRT1_2:二分之一 ½ 的平方根,同时也是2的平方根的倒数,约0.707。
Math.SQRT2:2的平方根,约1.414
四舍五入
Math.round(x):四舍五入后的整数
Math.ceil(x):向上取整
Math.floor(x):向下取整
Math.trunc(x):整数部分,直接去除小数点及之后部分
Math.sign(x):正数返回1,负数返回-1,0返回0
Math.sqrt(x):平方根
Math.fround(x):返回最接近一个数的单精度浮点型表示
数字操作
Math.abs(x):绝对值
Math.cbrt(x):立方根
Math.pow(x, y): x的y次幂
曲线和三角函数
Math.sin(x):正弦值
Math.cos(x):余弦值
Math.tan(x):正切值
Math.asin(x):反正弦值
Math.acos(x):反余弦
Math.atan(x):反正切值
Math.atan2(y, x):返回 y/x 的反正切值
以上三角函数传入的值为弧度值而非角度值
弧度/(Math.PI / 180)=角度
角度*(Math.PI / 180)=弧度
Math.sinh(x):双曲正弦值
Math.cosh(x):双曲余弦值
Math.tanh(x):双曲正切值
Math.asinh(x):反双曲正弦值
Math.acosh(x):反双曲余弦值
Math.atanh(x):反双曲正切值
其他操作
Math.clz32(x):返回一个32位整数的前导零的数量
Math.max([x[, y[, …]]]):返回多个数值中最大值
Math.min([x[, y[, …]]]):返回多个数值中最小值
Math.random():返回一个 0 到 1 之间的伪随机数
Math.hypot([x[, y[, …]]]):返回其所有参数平方和的平方根
Math.exp(x):返回欧拉常数的参数次方,E^x,其中 x 为参数,E 是欧拉常数(2.718...,自然对数的底数)
Math.expm1(x):返回 exp(x) - 1 的值
Math.imul(x, y):返回 32 位整数乘法的结果
Math.log(x):自然对数(㏒e,即 ㏑)
Math.log1p(x):返回一个数加 1 的和的自然对数(㏒e,即 ㏑)
Math.log10(x):返回一个数以 10 为底数的对数
Math.log2(x):返回一个数以 2 为底数的对数
Math.toSource():返回字符串 "Math"
五、日期和时间对象
六、字符串对象
七、可索引集合对象
八、使用键的集合对象
Map
Set
WeakMap
WeakSet
九、结构化数据
十、抽象对象
Promise、Generator、GeneratorFunction、AsyncFunction
十一、反射
Reflect、Proxy