对象Object:
普通对象定义方式:
1、new操作符
Var person=new Object();
Person.name=”jhon”;
Person.age=22;
2、对象字面量
Var person={name:’jhon’,age:22}
数组对象Array
定义方式:2种,
1、 Var colors=newArray(20) var colors=new Array(‘red’,’green’);
2、var colors=[‘red’,’green’];
转换方法:
toString():把数组拼接成以逗号分隔的字符串;valueOf();返回的是数组
toLocalString()
数组方法:
Pop(),push(), 栈方法;
Shift(),unshift() ;队列方法
排序方法:
Reverse()反转数组;
Sort(compare);通过compare比较函数保持正确的升序降序;
操作方法:
concat():colors.concat(“yellow”,[”black”,”red”]);拼接数组;
Slice():slice(1,4)从位置1开始到位置4-1结束;若为负数倒着数
Splice():
删除:splice(0,2)删除数组中的前2项;删除第一项的位置,删除的项数
插入:三个参数;起始位置,0(要删除项数),要插入的项
替换:同上
位置方法:
2个参数:要查找的项;查找起始位置索引(可选)
IndexOf():从数组开头向后
lastIndexOf():从数组末尾向前
迭代方法:
Every();对数组中的每一项都运行给定函数,都返回true;则返回true
Some();其中一项返回true,则返回true
Filter();返回该函数会返回true的项的组成数组
forEach();没有返回值
map();返回函数调用的结果组成的数组
归并方法:
Reduce();reduceRight()(从后到前)
参数2个:每一项上调用的函数;归并基础初始值(可选)
Var values=[1,2,3,4,5];
Var sum=values.reduce(function(prev,cur,index,array){
Return prev+cur;
})
Alert(sum); //15
日期对象:
使用new创建日期对象:
Var now=new Date();
RegExp对象:
创建方法:2种
Var express=/pattern/flags; varexpress=new RegExp(“[bt]at”,”i”);
Flags:支持三种标志:g全局模式,i不区分大小写,m多行模式
2种检测方法:
1、test :返回false或true
Var re=/^([0-9a-zA-Z])+@([0-9a-zA-Z]).([a-zA-Z0-9]){2,3}$/;
Re.test(1461686121@qq.com);
2、exec():返回匹配的数组,与模式匹配的字符串,index(长度),input(输入的字符串)
varre=/\?([a-z0-9])+=([0-9])$/;console.log(re.exec("url?id=2"));
返回的:["?id=2","d", "2", index: 3, input: "url?id=2"]
常用符号:
^ | 以X开始 |
$ | 以x结尾 |
[0-9]、[a-z] | 数字、字母 |
+ | 一个或者多个 |
. | 除换行符以外的任意字符 |
{m,n} | 匹配m- n 任意次 |
* | 出现0次或多次 |
? | 0次或者一次 |