JavaScript 全局对象:全局属性和函数可用于所有内建的 JavaScript 对象。可以作用于全局代码的调用,全局对象是预定义的对象,作为 JavaScript 的全局函数和全局属性的占位符。通过使用全局对象,可以访问所有其他所有预定义的对象、函数和属性。全局对象不是任何对象的属性,所以它没有名称。在顶层 JavaScript 代码中,可以用关键字 this 引用全局对象。但通常不必用这种方式引用全局对象,因为全局对象是作用域链的头,这意味着所有非限定性的变量和函数名都会作为该对象的属性来查询。例如,当JavaScript 代码引用 parseInt() 函数时,它引用的是全局对象的 parseInt 属性。全局对象是作用域链的头,还意味着在顶层 JavaScript 代码中声明的所有变量都将成为全局对象的属性。全局对象只是一个对象,而不是类。既没有构造函数,也无法实例化一个新的全局对象。
例如eval(): 函数eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
但是eval()函数也要特别注意:该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回。因此请不要为 eval() 函数传递 String 对象来作为参数。如果试图覆盖 eval 属性或把 eval() 方法赋予另一个属性,并通过该属性调用它,则 ECMAScript 实现允许抛出一个 EvalError 异常如果参数中没有合法的表达式和语句,则抛出 SyntaxError 异常。如果非法调用 eval(),则抛出 EvalError 异常。如果传递给 eval() 的 Javascript 代码生成了一个异常,eval() 将把该异常传递给调用者;
encodeURI() 函数 :encodeURI() 函数可把字符串作为 URI 进行编码。
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ’ ( ) 。该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?😡&=+$,#;输出来的结果就是一堆乱码!
decodeURI() 函数decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码。
isNaN() 函数:isNaN() 函数用于检查其参数是否是非数字值。
如果是数字 返回false
如果是其他 返回 true
下面还也好多其他可以定义全局对象的函数: