js学习笔记之标准库

 在全局函数中,this等于window 

 在函数被作为某个对象的方法调用时,this等于那个对象。

数组的函数:
检测:Array.isArray()
转换:toString(),toLocalString(),valueOf(),join()
排序:sort(f),reverse()
栈:pop,push
队列:shift和unshift
操作方法:
concat 将参数加入到一个新的数组后,不影响自己
slice(1,4) 从第1项切割到第4项(不包括最第四项) 不影响自己
splice操作的是数组自己,splice(1,4) 从第一项删除到第四项 splice(2.0,"red"."green")起始位置,删除0项,加入两项
位置方法:
indexof和lastindexof表示从前面和从后面开始查找的位置,没找到则返回-1 返回的索引位置都是从前面开始数的位置,所比较的方法都是全等
迭代方法:every(f) 对每一项运行指定函数,如果都为true,则返回true,否则返回false
some(f) 如果有一项符合条件,则返回true;否则返回false;
filter(f) 筛选出符合条件的数据组成的数组
forEach(f) 对每一项执行指定函数
map(f) 对每一项运行f,返回每次结果组成的数组
迭代缩小方法:reduce(f(prev,cur,index,array){})

apply或call
sum.apply(this,arguments) //this相当于环境
sum.apply(this,[num1,num2])
sum.call(this,num1,num2)
apply或call的真正用处在于扩充函数赖以运行的作用域:函数不用绑定在某个对象上。
var foo=bar.bind(o);//将bar函数绑定在对象o上。
foo.call()

Global对象
isNaN()
isFinite()
parseInt()
parseFloat()
encodeURI()
encodeURIComponent()
其实undefined NaN Infinity Object,Function Error都是Global对象的属性


Number类型
num.toFixed(2) 转化为小数点后两位的字符串
num.toExponential(1)
num.toPrecision(2)

String类型
stringValue.length(包括双字符)
charAt(1),charCodeAt(1),stringValue(1)
concat("def"),但实际中用"+"更多
slice(1,5)=substring(1,5) 从第一个到第五个
substr(1,5)从第一个开始往后五个
indexOf() lastindexOf() trim()
toLocaleUpperCase() toUpperCase() toLocaleLowerCase() toLowerCase()
var pattern=/.at/;
var matches=text.match(pattern)
search(pattern)类似,返回的是第一个匹配项的索引
replace()可以替换部分,或替换所有,还能够跟函数,指定特定的替换方式
split(",") 用指定的符号分割字符串,生成一个数组

原文地址:https://www.cnblogs.com/Benjamin/p/5010860.html