zoukankan      html  css  js  c++  java
  • 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对象

  • 相关阅读:
    668. Kth Smallest Number in Multiplication Table
    658. Find K Closest Elements
    483. Smallest Good Base
    475. Heaters
    454. 4Sum II
    441. Arranging Coins
    436. Find Right Interval
    410. Split Array Largest Sum
    392. Is Subsequence
    378. Kth Smallest Element in a Sorted Matrix
  • 原文地址:https://www.cnblogs.com/jalja/p/4832365.html
Copyright © 2011-2022 走看看