字符串方法函数(字符串方法都不会改变原来字符串)
·charAt()方法用于返回指定索引处的字符。索引范围为从 0 到 length() - 1
·indexOf()方法可返回某个指定的字符串值在字符串中首次出现的位置。 如果没有找到匹配的字符串则返回 -1。
·lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,如果指定第二个参数 start,则在一个字符串中的指定位置从后向前搜索。 如果没有找到匹配的字符串则返回 -1。
·substr()方法用于提取从第一个参数开始第二个参数长度的字符串。
·substring() 方法用于提取字符串中介于两个指定下标之间的字符。(包含开始索引不包含结束索引)
·slice() 方法用于提取字符串的某个部分。第二个参数为负数,则从最后往前查找几位
·toLowerCase/toUpperCase()方法,将字符串全部转小写/大写。
·split()以第一个参数分割字符串返回数组形式
·replace()将字符串中的参数1用参数2替换
·trim()去除字符串首尾空格
数组方法
·push/pop()在数组末尾添加/删除元素,添加返回修改后的长度,删除返回删除项 (改变原数组)
·unshift/shift()在数组头部添加/删除元素 同push/pop()
·splice() 方法向/从数组中添加/删除/替换元素,然后返回被删除的项目。(改变原数组)
·slice() 方法可从已有的数组/字符串中返回选定的元素。返回截取的数组/字符串。(不改变原数组/字符串)
·sort()数组排序。自定义排序:sort(function(a,b){return a-b;//从小到大}) (改变原数组)
·join()将数组按参数分割成字符串 (不改变原数组)
·concat()链接数组 (不改变原数组)
·reverse()反转数组项顺序 (改变原数组)
·indexOf()从第二个参数开始查找第一个参数,返回索引值
·isArr()判断是否时数组
·数组迭代:every(),some(),filter()//对数组中满足条件的项组成新数组并返回,map()//迭代数组,forEach()
map(); map不检测空数组,map不改变原数组
var array = [3,5,7,9];
//将所有元素+1
var resultItem = array.map(function(item,index,array){
return item+1;
});
var resultIndex = array.map(function(item,index,array){
return index;
});
var resultArray = array.map(function(item,index,array){
return array;
});
console.log(resultItem,'--',resultIndex,'--',resultArray);
// [4, 6, 8, 10] -- [0, 1, 2, 3] --
// [[0, 1, 2, 3], [0, 1, 2, 3], [0, 1, 2, 3], [0, 1, 2, 3]]
更新
es6新增数组方式:
arr.fill(value,start,end); // 改变原数组,返回该数组
let arr = [0,1,2,3,4,5,6,7,8,9];
console.log(arr.fill(5)); // [5, 5, 5, 5, 5, 5, 5, 5, 5, 5]
console.log(arr); // [5, 5, 5, 5, 5, 5, 5, 5, 5, 5]
// 原数组改变了,所以重新赋值
arr = [0,1,2,3,4,5,6,7,8,9];
console.log(arr.fill(5,2)); // [0, 1, 5, 5, 5, 5, 5, 5, 5, 5]
arr = [0,1,2,3,4,5,6,7,8,9];
console.log(arr.fill(5,2,4)); // [0, 1, 5, 5, 4, 5, 6, 7, 8, 9]