JavaScript/內建對象

內建對象:在js中已經定義好的對象,直接可以使用。

Number 編輯

創建方式:

        var myNum=new Number(value); //返回一个新创建的 Number 对象
        var myNum1=Number(value); //把参数转换成一个原始的数值,并且返回这个值(如果转换失败,则返回 NaN)

參數 value 是要創建的 Number 對象的數值,或是要轉換成數字的值。

var num = new Number(5);
alert(typeof(num));     //object
alert(typeof(num.toString()));  //string

屬性和方法:

  • toString():轉成字符串
  • valueOf():返回一個 Number 對象的基本數字值(number)

Boolean 編輯

創建方式:

        var bool = new Boolean(value);  
        var bool = Boolean(value);

屬性和方法:

  • toString():轉成字符串
  • valueOf():返回一個 Boolean 對象的基本值(boolean)

String 編輯

創建方式:

        var str = new String(s);
        var str = String(s);

屬性和方法:

  • length:字符串的長度
  • charAt():返回索引字符
  • charCodeAt():返回索引字符unicode
  • indexOf():返回字符的索引
  • lastIndexOf():逆向返回字符的索引
  • split():將字符串按照特殊字符切割成數組
  • substr():從起始索引號提取字符串中指定數目的字符
  • substring():提取字符串中兩個指定的索引號之間的字符
  • toUpperCase():轉大寫

示例:

            var str = new String("a-b-cdc-FG");
            //alert(str.length);    //10
            //alert(str.charAt(4)); //c
            //alert(str.charCodeAt(4)); //99
            //alert(str.indexOf("c"));  //4
            //alert(str.lastIndexOf("c"));  //6
            /* var arr = str.split("-");
            for(var i=0; i< arr.length; i++){
                alert(arr[i]);  //a,b,cdc,FG
            }  */
            //alert(str.substr(2,3));   //b-c
            //alert(str.substring(2,3));    //b
            alert(str.toUpperCase());   //A-B-CDC-FG

Array 編輯

創建方式:

        var arr = new Array();//空数组
        var arr = new Array(size);//创建一个指定长度的数据
        var arr = new Array(element0, element1, ..., elementn);//创建数组直接实例化元素
        var arr = [];//空数组
        var arr = [1,2,5,"java"];//创建数组直接实例化元素

屬性和方法:

  • length:數組長度
  • join():把數組的所有元素放入一個字符串。元素通過指定的分隔符進行分隔一個
  • pop():刪除並返回最後元素
  • push():向數組的末尾添加一個或更多元素,並返回新的長度
  • reverse():反轉數組
  • sort(): 排序

示例:

        var arr = [3,7,1,"java","js",true,4];
        //alert(arr.length);    //7
        //alert(arr.join("-")); //3-7-1-java-js-true-4
        /* alert(arr.pop());    //4
        alert(arr);         //3,7,1,java,js,true */
        /* alert(arr.push("R"));    //8
        alert(arr);     //3,7,1,java,js,true,4,R */
        //alert(arr.reverse()); //4,true,js,java,1,7,3
        alert(arr.sort());  //1,3,4,7,java,js,true

Date 編輯

創建方式:

        var myDate = new Date();
        var myDate = new Date(毫秒值);//代表从1970-1-1到现在的一个毫秒值

屬性和方法:

  • getFullYear():年
  • getMonth():月 0-11
  • getDate():日 1-31
  • getDay():星期 0(周日)-6
  • getTime():返回1970年1月1日午夜到指定日期(字符串)的毫秒數
  • toLocalString():獲得本地時間格式的字符串

示例:

            var date = new Date();
            //alert(date.toString());   //Sun Aug 13 2017 17:19:55 GMT+0800 (中国标准时间)
            //alert(date.toLocaleDateString()); //2017/8/13
            /* alert("year: " + date.getFullYear());    //year: 2017
            alert("month: " + date.getMonth());     //month: 7
            alert("date: " + date.getDate());       //date: 13
            alert("day: " + date.getDay());         //day: 0 */
            var time1 = date.getTime();
            var time2 = 1*24*60*60*1000;
            alert(new Date(time1 + time2).toLocaleString());//2017/8/14 下午5:26:42

Math 編輯

創建方式:Math 對象並不像 Date 和 String 那樣是對象的類,因此沒有構造函數 Math(),像 Math.sin() 這樣的函數只是函數,不是某個對象的方法。您無需創建它,通過把 Math 作為對象使用就可以調用其所有屬性和方法。

屬性和方法:

  • PI:圓周率
  • abs():絕對值
  • ceil():對數進行上捨入
  • floor():對數進行下捨入
  • pow(x,y):返回 x 的 y 次冪
  • random():0-1之間的隨機數
  • round():四捨五入

示例:

            /* var x = "-987";
            alert(Math.abs(x));     //987 */

            var x = 12.34;
            var y = 2;
            var z = 4;
            //alert(Math.ceil(x));  //13
            //alert(Math.floor(x)); //12
            //alert(Math.round(x));     //12
            //alert(Math.pow(y,z));     //2^4 = 16
            alert(Math.random());       //0.14079708642361743

RegExp 編輯

創建方式:

        var reg = new RegExp(pattern);
        var reg = /^正则规则$/;

規則的寫法:

  • [0-9](數字)
  • [A-Z](大寫字母)
  • [a-z](小寫字母)
  • [A-z](大小寫字母都行)
  • \d 代表數字
  • \D 非數字
  • \w 查找單詞字符
  • \W 查找非單詞字符
  • \s 查找空白字符
  • \S 查找非空白字符
  • n+ 出現至少一次
  • n* 出現0次或多次
  • n? 出現0次或1次
  • {5} 出現5
  • {2,8} 2到8次

方法:test(str):檢索字符串中指定的值。返回 true 或 false

需求:

    //校验邮箱:
    var email = gaoyafei.good@qq.com
    var reg = /^[A-z]+[A-z0-9_-]*\@[A-z0-9]+\.[A-z]+$/;
    reg.test(email);