JavaScript进阶部分
2017-06-06 本文已影响0人
Love小六六
- 引用类型
- object类型
可以用typeof来判断某个属性是否存在
//对象定义方式
var person = new Object();
var person = {};
person.Name = "Black";
var person = {
Name : "Black"
};
- Array类型
1)检测数组
Array.inArray([1,2,3]) =>true//确定某个值是否是数组
2)转换方法
toString()//以逗号分隔的字符串形式返回数组
join()//定义分隔符
3)栈方法
push()//接收任意数量参数,添加至数组末尾,并返回修改后的数组长度
pop()//从数组末尾移除最后一项,减少数组长度,并返回移除的值
4)队列方法
shift()//移除数组的第一项,并返回该值,数组长度减1
unshift()//在数组前端添加任意项,并返回数组长度
5)重排序方法
reverse()//反转数组项顺序
sort()//默认升序排列,可以接收一个比较函数作为参数
6)操作方法
concat()//数组拼接,创建新数组
slice(start,end)//创建新数组,返回项的起始到结束为止(不包括end)
splice()// 删除:可以删除任意数量的项,参数第一项的位置和要删除的项数;
插入和替换:向指定位置插入任意数量的项,起始位置,要删除的项数和要插入的项//
7)位置方法
//两个参数,要查找的项和(查找起始位置),返回查找项所在位置
indexOf()//从前向后查找
lastIndexOf()//从后向前查找
8)迭代方法
filter()//对于给定函数,返回函数返回为true的项所组成的数组
forEach()//对每一项运行给定的函数,无返回值
map()//对每一项运行给定函数,返回函数调用结果组成的数组
every()//函数对每一项都返回true,则返回true
some()//函数对任一项返回true,则返回true
- 归并方法
//迭代数组所有的项,接收四个参数:前一个值、当前值、项的索引和数组对象
reduce()//从第一项开始
reduceRight()//从最后一项开始
- Date类型
1)初始
Date.parse()//返回毫秒数
支持格式:Date.parse(月/日/年);Date.parse(英文月名 日,年);
Date.parse(英文星期几 英文月名 日 年 时:分:秒 时区);
Date.parse(YYYY-MM-DDTHH:mm:ss:sssZ)
Date.UTC(2005,4,5,17,55,55)//UTC表示月份是从0开始
Date.now()//返回当前时间的毫秒数
2)日期格式化方法
toDateString()//特定格式显示星期几 日 月 年
toTimeString()//特定格式显示时分秒 时区
toUTCString()//特定格式显示UTC日期
- RegExp类型
创建正则表达式
var expression = /pattern/flags
模式(pattern)为正则表达式
标志(flags):
g(全局模式):表示应用于所有字符串,而非遇到第一个匹配后立即停止
i(不区分大小写):匹配时忽略字符串大小写
m(多行模式):到达一行末尾后继续查找下一行
1)RegExp实例属性
.global 是否设置了g标志
.ignoreCase 是否设置了标志
.multiline 是否设置了m标志
.lastIndex 表示开始搜索下一个匹配项的字符位置
.source 返回正则表达式的模式
2)RegExp实例方法
exec()//参数为需要匹配正则的字符串,返回匹配的字符串数组和额外的两个属性,index表示匹配项在字符串的位置,input为原字符串
test()//匹配返回true
- Function类型
arguments 保存函数的参数
this 当前的环境对象
函数名.length 为函数的参数个数
call()、apply()扩充作用域
- 基本包装类型
1)Boolean类型
var b = new Boolean();
2)Number 类型
3)String 类型
a.字符方法
charAt(index)//返回特定位置字符
charCodeAt(index)//返回特定位置字符编码
b.字符串操作方法
不改变原字符串
concat()//字符串拼接
slice(start,end)//返回子串
substring(start,end)//返回子串
substr(start,num)//开始位置和字符个数
c.子串位置方法
indexOf()//从前向后
lastIndexOf()//从后向前
d.trim()方法
删除前置和后缀所有空格
e.字符串大小写转换
toLowerCase()
toUpperCase()
f.字符串模式匹配
match()//同exec
search()//返回第一个匹配项的索引
replace()//替换
split()//按照分隔符分割为数组
- 单体内置对象
1)Global对象
URI编码
encodeURI()
encodeURIComponent()
URI解码
decodeURI()
decodeURIComponent()
eval()字符串为可执行代码函数,变量和函数不会提升
2)Math对象
min()
max()
ceil()
floor()
round()
random()