zoukankan      html  css  js  c++  java
  • Javascript之内置对象

        ECMA-262定义了两个内置对象:Global和Math。

    1、Global对象

        Global(全局)对象可以说是一个最特殊的对象,因为无论怎么看这个对象是不存在的,只要不是属于其他对象的属性和方法,都是Global对象的属性和方法。事实上,没有全局变量和全局函数;所有在全局作用域中定义的属性和函数,都是Global对象的属性和方法。

        URI编码方法

        Global对象的encodeURI()和encodeURIComponet()方法可以对URI进行编码。其中encodeURI()是对整个URI有效,而encodeURIComponet()是用于对URI某段进行编码。它们主要区别在于,encodeURI()不会对本身属于URI的特殊字符进行编码,如冒号,斜杠等,而encodeURIComponet()则会对它发现的任何非标准字符进行编码。

        一般来说,我们使用encodeURIComponet()比encodeURI()多,因为在实际开发中,更常见的是对查询字符串参数进行编码,而不是基础URI进行编码。

        decodeURI()和decodeURIComponet()方法则是相对应的解码操作。

        evel()方法

        eval()方法就像一个完整的ECMAScript解析器,它只接受一个参数,即要执行的ECMAScript字符串。

    eval("alert('Hi')");
    //相当于
    alert("Hi");

        当解析器发现代码中调用evel()方法时,它会将传入的参数当作实际的ECMAScript语句来解析,然后把结果插入到原位置。通过evel()执行的代码被认为是包含盖茨调用的执行环境的一部分,因此被执行的代码具有与该执行环境一样的作用域链。这就意味着通过evel()执行的代码可以引用包含环境中定义的变量,如下:

    var msg = "hello world";
    evel("alert(msg)");

        可见,变量msg在evel()调用的环境之外定义的,但其中的alert()仍能显示"hello world"。同样的,我们可以在evel()中定义一个函数,然后再进行调用:

    evel("function sayHi(){ alert('hi')}");
    sayHi();

        严格模式下,外部访问不到evel()中创建的任何变量和函数。

    2、Math对象

        ECMAScript还为保存数学公式和信息提供了一个公共位置,即Math对象。与我们在JavaScript直接编写的计算功能相比,Math对象提供的计算功能执行起来要快的多。

  • 相关阅读:
    Python(调用函数、定义函数)
    Python(可变/不可变类型,list,tuple,dict,set)
    Python(变量、数据类型)
    java内存泄露
    java垃圾回收
    mac下安装mysql教程
    Http、Https请求工具类
    ThreadLocal内部机制及使用方法
    java单例模式详解
    (转)Java集合框架:HashMap
  • 原文地址:https://www.cnblogs.com/zxj159/p/3085440.html
Copyright © 2011-2022 走看看