ECMAScript-单体内置对象

来源:互联网 发布:云服务器软件 编辑:程序博客网 时间:2024/06/05 01:08

单体内置对象

  • ECMAScript对内置对象的定义是:“由ECMAScript实现提供的、不依赖宿主环境的对象”
  • 除了前面介绍的大多数内置对象,例如Object、Array和String。
  • ECMA-262还定义了两个单体内置对象:Global和Math。

Global对象

  • ECMAScript中的Global对象在某种意义上是作为一个终极的“兜底儿对象”
  • 没有全局变量或全局函数;所有在全局作用域中定义的属性和函数,都是Global对象的属性。
  • 比如isNaN()isFinite()、parseInt()以及parseFloat()
  • Global对象的encodeURI()和encodeURIComponent()方法可以对URI(Uniform Resource Indentifiers,通用资源标识符)进行编码,以便发送给浏览器。
  • 与这两个方法对象的两个方法分别是decodeURI()和decodeURIComponent()。其中,decodeURI()只能对使用encodeURI()替换的字符进行解码。

    var uri="file:///G:/js%E9%AB%98%E7%A8%8B/instanceof%E7%94%A8%E6%B3%95.html";    console.log(getURI('decodeURI',uri));    function getURI(info,uri){        switch(typeof(uri)){            case'string':                return get(info);                break;            default:                throw new Error("请传入有效uri参数");                break;        };        function get(info){            switch(info){            case'encodeURI':                return encodeURI(uri);                break;            case'decodeURI':                return decodeURI(uri);                break;            default:                break;        };        }    }
  • eval()方法。
    它只接受一个参数,即要执行的ECMAScript(或JavaScript)字符串。
  • 当解析器发现代码中调用eval()方法时,它会将传入的参数当作实际的ECMAScript语句来解析,然后把执行结果插入到原位置。
  • ECMAScript 5明确禁止给undefined、NaN和Infinity赋值
  • ECMAScript 虽然没有指出如何直接访问Global对象,但Web浏览器都是将这个全局对象作为window对象的一部分加以实现的。
原创粉丝点击