js之global 全局对象 方法

时间: 2018-12-12阅读: 2431标签: 对象

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报错  
}())


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/1561

JavaScript Error对象详解

error,指程序中的非正常运行状态,在其他编程语言中称为“异常”或“错误”。解释器会为每个错误情形创建并抛出一个Error对象,其中包含错误的描述信息。

可以迭代大部分数据类型的 for…of 为什么不能遍历普通对象?

我们知道,ES6 中引入 for...of 循环,很多时候用以替代 for...in 和 forEach() ,并支持新的迭代协议。for...of 允许你遍历 Array(数组), String(字符串), Map(映射), Set(集合),TypedArray(类型化数组)、arguments、NodeList对象

js对象 对属性调用.和[] 两种方式的区别

在 JS 对象中,调用属性一般有两种方法——点和中括号的方法。 标准格式是对象.属性(不带双引号),注意一点的是:js对象的属性,key标准是不用加引号的,加也可以,特别的情况必须加,如果key数字啊,表达式啊等等

HTML5 History API 和 Location 对象剖析

这次也不长篇大论,只搞清楚两件事 —— History API & Location 对象。了解清楚这些,将能够使我们在不同 web 页面之间穿梭自如。

JavaScript 中的可迭代对象与迭代器

Lazy evaluation常被译为“延迟计算”或“惰性计算”,指的是仅仅在真正需要执行的时候才计算表达式的值。与惰性求值相反的是及早求值(eager evaluation)及早求值,也被称为贪婪求值(greedy evaluation)或严格求值

JavaScript 防篡改对象

开发过程中,每个开发者定义的对象可能不想要被别的开发者所重写或者新增对象属性,这时候可以将对象变为防篡改对象,当然防篡改对象也有分级别的

比较 JavaScript 对象的四种方式

比较 JavaScript 中的原始值非常简单。只需使用任何一种可用的相等运算符即可,例如严格相等运算符:但是对象却有结构化数据,所以比较起来比较困难。

Js通过.或者[]访问对象属性的语法、性能等区别

在JavaScript中可以使用 . 或者 [ ] 来访问对象的属性,但是对象中方法只能通过 . 来获取;使用.运算符来存取对象的属性的值。或者使用[]作为一个关联数组来存取对象的属性。但是这两种方式有什么区别了?

Javascript的对象拷贝

Javascript中对象拷贝的多种方式,以及探究一下深拷贝和浅拷贝。在开始之前,我先提一下一些基础知识:Javascript 的对象只是指向内存中某个位置的指针。这些指针是可变的,也就是说,它们可以重新被赋值。因此,单单复制这个指针的结果是,有两个指针指向内存中的同一块地址。

JS声明对象时属性名加引号与不加引号的问题

JS声明对象时属性名加引号与不加引号的问题,一般情况下属性名加引号和不加引号是都可以的,效果是一样的。如果属性名是数字,则必须用“”包围,并且用 [] 方括号访问。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!