javascript内建对象
内建对象:在js中已经定义好的对象,直接可以使用
(1)Number
创建方式:
var myNum=new Number(value);
var myNum=Number(value);
参数 value 是要创建的 Number 对象的数值,或是要转换成数字的值。
var num = new Number(5);
alert(typeof(num)); //object
alert(typeof(num.toString())); //string
当 Number() 和运算符 new 一起作为构造函数使用时,它返回一个新创建的 Number 对象。
如果不用 new 运算符,把 Number() 作为一个函数来调用,它将把自己的参数转换成一个原始的数值,并且返回这个值(如果转换失败,则返回 NaN)
属性和方法:
toString():转成字符串
valueOf():返回一个 Number 对象的基本数字值(number)
(2)Boolean
Boolean 对象是一个将布尔值打包的布尔对象。
Boolean 对象主要用于提供将布尔值转换成字符串的 toString() 方法
创建方式:
var bool = new Boolean(value);
var bool = Boolean(value);
属性和方法:
toString():转成字符串
valueOf():返回一个 Boolean 对象的基本值(boolean)
注释:如果省略 value 参数,或者设置为 0、-0、null、""、false、undefined 或 NaN,则该对象设置为 false。
否则设置为 true(即使 value 参数是字符串 "false")
(3)String
创建方式:
var str = new String(s);
var str = String(s);
属性和方法:
length:字符串的长度
charAt():返回索引字符
charCodeAt():返回索引字符unicode
indexOf():返回字符的索引
lastIndexOf():逆向返回字符的索引
split():将字符串按照特殊字符切割成数组
substr():从起始索引号提取字符串中指定数目的字符
substring():提取字符串中两个指定的索引号之间的字符
toUpperCase():转大写
示例:
<script type="text/javascript">
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
</script>
(4)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():反转数组
示例:
<script type="text/javascript">
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
</script>
(5)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():获得本地时间格式的字符串
示例:
<script type="text/javascript">
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
</script>
(6)Math
创建方式:
Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,
不是某个对象的方法。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。
属性和方法:
PI:圆周率
abs():绝对值
ceil():对数进行上舍入
floor():对数进行下舍入
pow(x,y):返回 x 的 y 次幂
random():0-1之间的随机数
round():四舍五入
示例:
<script type="text/javascript">
/* 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
</script>
(7)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);