• JS 内置对象


    内置对象的定义:有ECMAScript实现提供的、不依赖与宿主环境的对象,在ECMAScript运行之前就已经创建好的对象就叫做内置对象。

                          就是说,是不需要我们开发人员先是的实例化对象就能够调用和运行的对象。 在ECM-262中只是定义了两个内置对象 Global和Math对象

    一、Global对象(单体对象)

             Global(全局)对象是在ECMAScript中是一个特别的对象,因为这个对象是不存在的。在ECMAScript 中任何不属于其他对象的方法和属性都是这个对象的方法和属性。

     1、Global对象的 编码/解码方法

     window.onload=function(){
              var url="http://www.baidu.com";
              //  编码encode 
              //该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
              var encode=encodeURI(url);//http://www.baidu.com 
              //完全编码,它会将发现的URI中所有的非标准字符进行编码
              var encodeComponent=encodeURIComponent(url);//http%3A%2F%2Fwww.baidu.com
    
             //解码
            //decodeURI(): 用来解码由编码方法 encodeURI()编码的URI         
            var decode=decodeURI(encode);//http://www.baidu.com
            //decodeURIComponent(): 用来解码由编码方法 encodeURIComponent() 编码的URI    
            var decodeComponent=decodeURIComponent(encodeComponent);//http://www.baidu.com
    
          }

    2.Global对象的eval()方法

    /*
                 eval()方法是用来担当一个字符串解析器的作用,只是接收一个参数,
           而这个参数中就是要执行的JS代码,多余的参数会忽略的,此方法可能有返回值也可能没,
           要根据参数中的JS代码而定,在AJAX中传递参数的时候很有用 
           注意:
                 eval() 方法虽然很好用,功能很强大,但是也是很危险的方法,因此在使用的时候应该谨慎使用。
             特别是在用户输入数据的时候,很可能会导致程序的安全性问题,比如代码注入等等
         */
          window.onload=function(){
              //作为js解析器
            var box="alert('作为js解析器')";
            eval(box); //弹出 作为js解析器
            alert(eval(box));//先弹出 作为js解析器 然后弹出 undefined 说明此时eval方法没有返回值
    
           //在eval方法解析某种字面量变量的时候,返回的就是这个字面量的值
             var box="[3,4,5,6]";
             console.info(box); //此时输出的box 就是字符串 [3,4,5,6]
             var evalBox=eval(box);//此时输出的evalBox 就是数组类型  [3, 4, 5, 6]
          }

     3.其他方法

    window.onload=function(){
            // parseFloat(numString) 返回由字符串转换得到的浮点数。
            var a=parseFloat("abc");     // 返回 NaN。
            var b=parseFloat("1.2abc");   // 返回 1.2。
            /*
             parseInt(numString, [radix]) 返回由字符串转换得到的整数。
             radix
                可选项。在 2 和 36 之间的表示numString所保存数字的进制的值。
                如果没有提供,则前缀为 '0x' 的字符串被当作十六进制,
                前缀为 '0' 的字符串被当作八进制。所有其它字符串都被当作是十进制的。
            */
            var c=parseInt("abc");     // 返回 NaN。
            var d=parseInt("12abc");   // 返回 12。
            /*
            isNaN 检测一个变量是不是一个数 不是一个数返回true,是一个数返回false
            使用这个函数的典型情况是检查parseInt和parseFloat方法的返回值。
            */
            var  flag=isNaN(23123);
            /*
            isFinite(number) 返回一个 Boolean 值,指明所提供的数字是否是有限的。
            如果number不是NaN、负无穷或正无穷,那么isFinite方法将返回true。 如果是这三种情况,函数返回false。
            */
            var flag2=isFinite(23213.3241);
          }

     二、Math 对象(单体对象)

    三、Date对象

  • 相关阅读:
    [Camtasia报错]An error occurred in the Recorde System Audio setup Failed
    [Oracle报错]RMAN-12005: error during channel cleanup/ORA-19550: cannot ...
    [Teamviewer报错]现在无法捕捉屏幕画面。这可能是由于快速的...
    [SVN技能]SVN服务迁移(Windows-Linux)
    [RabbitMQ技能]安装部署单节点RabbitMQ
    运算符的那些事
    java之连接数据库之JDBC访问数据库的基本操作
    面向对象编程之OC
    集合
    面向对象
  • 原文地址:https://www.cnblogs.com/jalja/p/4832365.html
Copyright © 2020-2023  润新知