js之global 全局对象 方法
global 作为js的全局对象,但其是无法直接访问的,但是在浏览器中浏览器是将这个对象当做是window对象的一部分,即Date 等Global的属性使用window.Date 可访问到
Global 对象的属性
| 属性 | 描述 |
|---|---|
| Infinity | 特殊值表示正的无穷大。 |
| NaN | 特殊值表示非数字值。 |
| undefined | 特殊值表示一个变量未被初始化。 |
Global 对象的方法
| 方法 | 描述 |
|---|---|
| decodeURI() | 对已编码的统一资源标识符(URI)进行解码,并返回其非编码形式。 |
| decodeURIComponent() | 对统一资源标识符(URI)的一个已编码的组件进行解码,并返回其非编码形式。 |
| encodeURI() | 对统一资源标识符(URI)进行编码,并返回编码后的URI字符串。 |
| encodeURIComponent() | 对统一资源标识符(URI)的有效组件进行编码,并返回编码后的字符串。 |
| escape() | 已过时对字符串进行编码,并返回一个可在所有计算机上读取的编码字符串。 |
| eval() | 计算并执行以字符串表示的JavaScript代码。 |
| isFinite() | 判断指定数字是否是有限值。 |
| isNaN() | 判断指定数字是否是非数字值NaN。 |
| parseFloat() | 将字符串转换为浮点数并返回。 |
| parseInt() | 将字符串转换为整数并返回。 |
| unescape() | 已过时对已经使用escape()函数编码的字符串进行解码,并返回解码后的字符串。 |
1.url 编码方法 ( encodeURL() 和 encodeURLComponent() )
1) encodeURI(); 用于整个url 且改方法不会对特殊字符进行编码
let url = "http://www.test.com/test one.hml#frist"; console.log(encodeURI(url)); //输出 : //http://www.test.com/test%20one.hml#frist
2)encodeURIComponent() 用于url的某一个片段,且会对任何非标准字符进行编码
let url = "http://www.test.com/test one.hml#frist"; console.log(encodeURIComponent(url)); //输出 : http%3A%2F%2Fwww.test.com%2Ftest%20one.hml%23frist
2. urI 解码方法 ( decodeURI() 和 decodeURIComponent())
1) decodeURI(str) 对应的解码 是解encodeURI(str) 的反码
2)decodeURIComponent() 对应解 encodeURIComponent(); 可以解码任何特殊字符的编码
3. eval(js-str) 方法 (将js的字符串代码解析为可执行的js代码,类似于js的解析器);
使用eval()时,执行的代码块被认为是所作用的环境或者作用域的一部分,常用来动态插入js到指定作用域,其中在eval()中创建的任何变量以及函数都不会被提升,因为这行声明是在需要执行的eval()字符串之中,只有执行到eval()时才创建
console.log('123'); //可直接在js中打印
eval('console.log("test")');// 该字符串通过eval() 解析也可直接在js中运行打印
test(); //Uncaught ReferenceError: test is not defined 因test函数在字符串中还未被eval()解析所以不会出现函数提升
eval("function test(){console.log('test')}");
//在严格模式下' use strict’;
//直接给 eval = 8 赋值将会返回报错 即
(function() {
'use strict';
eval('var a = 123');
console.log(a) //此时a报错
}())本文内容仅供个人学习/研究/参考使用,不构成任何决策建议或专业指导。分享/转载时请标明原文来源,同时请勿将内容用于商业售卖、虚假宣传等非学习用途哦~感谢您的理解与支持!