单体内置对象

在学习JavaScript的一些总结和经验,供大家参考和学习,同时也欢迎大家参与讨论。

“单体”内置对象

Global对象

编码方法(转义)

encodeURI()

  • 不会对 ASCII 字母数字进行编码,也不会对 ASCII 标点符号进行编码: - _ . ! ~ * ‘ ( )

  • 对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#

encodeURIComponent()

  • 不会对 ASCII 字母数字进行编码,也不会对 ASCII 标点符号进行编码: - _ . ! ~ * ‘ ( )
  • 但会对 ;/?:@&=+$,#(这些用于分隔 URI 组件的标点符号)会进行转义,因为他们都是由一个或多个十六进制的转义序列替换的。

解码方法(反转义)

decodeURI()

decodeURIComponent()

示例

eval()方法

  • eval()方法就像是一个完整的 ECMAScript 解析器,接收一个参数,即要执行的 ECMAScript (或 JavaScript)字符串。
  • 在 eval() 中创建的任何变量或函数都不会被提升,因为在解析代码的时候,它们被包含在一个字符串中;它们只在 eval() 执行的时候创建。

比如

1
eval('var a = 3;');
严格模式下的eval()

外部访问不到eval()中的创建的任何函数和变量

比如

1
2
3
eval("var x = 10");
alert(x);
//抛出错误:ReferenceError: x 没有定义

with(expression) statement; 语句

注意:严格模式下不允许使用with语句,会抛出语法错误

Math对象

min()和max()方法

接收:任意多个数值参数。

返回:最小或最大的那个数值。

舍入方法

  • 向上舍入:Math.ceil()
  • 向下舍入:Math.floor()
  • 标准舍入(四舍五入):Math.round()

random()方法

返回:大于等于 0 小于 1 的一个随机数。(0<= x < 1)。

方 法 说 明 方 法 说 明
Math.abs(num) 返回 num 的绝对值 Math.pow(num,power) 返回 num 的 power 次幂
Math.asin(x) 返回 x 的反正弦值 Math.cos(x) 返回 x 的余弦值
Math.exp(num) 返回 Math.E 的 num 次幂 Math.sqrt(num) 返回 num 的平方根
Math.atan(x) 返回 x 的反正切值 Math.sin(x) 返回 x 的正弦值
Math.log(num) 返回 num 的自然对数 Math.acos(x) 返回 x 的反余弦值
Math.atan2(y,x) 返回 y/x 的反正切值 Math.tan(x) 返回 x 的正切值

参考:https://juejin.im/post/5835836361ff4b0061f38a5d


文章标题: 单体内置对象
文章作者: 王奕聪,QQ:1301842163
许可协议: 知识共享许可协议
©署名-非商用-相同方式共享 4.0