一. Global 工具

Global(全局)工具是 ECMAScript 中一个特殊的工具,由于这个工具是不存在的。
在ECMAScript 中不属于任何其他工具的属性和方法,都属于它的属性和方法。
以是,事实上 ,并不存在全局变量和全局函数;所有在全局浸染域定义的变量和函数,都是 Global 工具的属性和方法。

PS:由于 ECMAScript 没有定义怎么调用 Global 工具,以是,Global.属性或者 Global.方法()都是无效的。
(Web 浏览器将 Global 作为 window 工具的一部分加以实现)

phpatan2JavaScript内置对象 NoSQL

Global 工具有一些内置的属性和方法:

1.URI 编码方法

URI 编码可以对链接进行编码,以便发送给浏览器。
它们采取分外的 UTF-8 编码更换所有无效字符,从而让浏览器能够接管和理解。

encodeURI()不会对本身属于 URI 的分外字符进行编码,例如冒号、正斜杠、问号和#号;而 encodeURIComponent()则会对它创造的任何非标准字符进行编码

把稳:URI中的是I不是L

var str = '?:/\\大圣monkeyking';

alert(encodeURI(str));

alert(encodeURIComponent(str));

利用了 URI 编码过后,还可以进行解码,通过 decodeURI()和 decodeURIComponent()来进行解码

var str = '?:/\\大圣monkeyking';

var e1 = encodeURI(str);

alert(decodeURIComponent(e1));

2.eval()方法

eval()方法紧张担当一个字符串解析器的浸染,他只接管一个参数,而这个参数便是要实行的 JavaScript 代码的字符串。
php中也有eval方法,用法相似。

eval('var box = 100'); //解析了字符串代码

alert(box);

eval('alert(100)'); //同上

eval('function box() {return 123}'); //函数也可以

alert(box());

eval()方法的功能非常强大,但也非常危险。
因此利用的时候必须极为谨慎。
特殊是在用户输入数据的情形下,非常有可能导致程序的安全性,比如代码注入等等。
一样平常新手不建议利用。

3.Global 工具属性

Global 工具包含了一些属性:undefined、NaN、Object、Array、Function 等等。

alert(Array); //返回布局函数

4.window 工具

之前已经解释, Global 没有办法直接访问, 而 Web 浏览器可以利用 window 工具来实现一全局访问。

alert(window.Array); //返回布局函数

二. Math 工具

ECMAScript 还为保存数学公式和信息供应了一个工具,即 Math 工具。
与我们在JavaScript 直接编写打算功能比较,Math 工具供应的打算功能实行起来要快得多。

1.Math 工具的属性

Math 工具包含的属性大都是数学打算中可能会用到的一些分外值。

Math.E 自然对数的底数,即常量 e 的值

Math.LN10 10 的自然对数

Math.LN2 2 的自然对数

Math.LOG2E 以 2 为底 e 的对数

Math.LOG10E 以 10 为底 e 的对数

Math.PI ∏的值

Math.SQRT1_2 1/2 的平方根

Math.SQRT2 2 的平方根

2.min()和 max()方法

Math.min()用于确定一组数值中的最小值。
Math.max()用于确定一组数值中的最大值。

3.舍入方法

Math.ceil()实行向上舍入,即它总是将数值向上舍入为最靠近的整数;

Math.floor()实行向下舍入,即它总是将数值向下舍入为最靠近的整数;

Math.round()实行标准舍入,即它总是将数值四舍五入为最靠近的整数;

alert(Math.ceil(25.9)); //26

alert(Math.ceil(25.5)); //26

alert(Math.ceil(25.1)); //26

alert(Math.floor(25.9)); //25

alert(Math.floor(25.5)); //25

alert(Math.floor(25.1)); //25

alert(Math.round(25.9)); //26

alert(Math.round(25.5)); //26

alert(Math.round(25.1)); //25

4.random()方法

Math.random()方法返回介于 0 到 1 之间一个随机数,不包括 0 和 1。

//返回1-10之间的随机整数,包括1和10

alert(Math.floor(Math.random()10 + 1));

//封装成函数

function getRandomNum(min,max) {

return Math.floor(Math.random() (max-min+1) + min);

}

//返回4,10之间的随机整数

alert(getRandomNum(4,10));

5.其他方法

Math.abs(num) 返回 num 的绝对值

Math.exp(num) 返回 Math.E 的 num 次幂

Math.log(num) 返回 num 的自然对数

Math.pow(num,power) 返回 num 的 power 次幂

Math.sqrt(num) 返回 num 的平方根

Math.acos(x) 返回 x 的反余弦值

Math.asin(x) 返回 x 的反正弦值

Math.atan(x) 返回 x 的反正切值

Math.atan2(y,x) 返回 y/x 的反正切值

Math.cos(x) 返回 x 的余弦值

Math.sin(x) 返回 x 的正弦值

Math.tan(x) 返回 x 的正切值