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);