JS 单体内置对象

时间:2023-03-09 00:39:04
JS 单体内置对象

内置对象: 由ECMAScript提供的、不依赖于宿主环境的对象,这些对象在ECMAScript程序执行之前就已经存在了。

      不必由开发人员显式地实例化内置对象

      比如: Object Array String Global Math

1.Global 对象

  所有在全局作用域中定义的属性和函数,都是Global对象的属性

  (1)URI 编码方法

  (2)eval() 方法 像是一个完整的ECMAScript 解析器,只接收一个参数,即要执行的ECMAScript(或JavaScript)字符串

    eval() 执行的代码被认为是包含该次调用的执行环境的一部分,因而被执行的代码具有与该执行环境相同的作用域链

      意味着可以引用包含在环境内定义的变量

    如:

    var msg = "hello world";

    eval("alert(msg)");  //hello world

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

    sayHi()

    显然sayHi()是在eval()内部定义的,但是对eval()的调用最终会被替换为定义函数的实际代码

    因此可以在下一行调用;对于变量也一样

    !! 不会发生变量提升,只在eval()执行时创建

  (3)window对象

    ECMAScript虽然没用指出如何访问Global对象,但Web浏览器都是将这个全局对象作为window对象的一部分加以实现的,因此,在全局作用域中声明的所有变量和函数,就都成了window对象的属性

   另一种取得Global对象的方法

    var global = function() {

      return this;

    }();

    在没给函数明确指定this值的情况下,this值等于Global对象

2.Math 对象

  Math.ceil() 向上舍入 取整

  Math.floor()向下舍入 取整

  Math.round()标准舍入

  Math.random() 返回大于等于0小于1的一个随机数