总结字符串和数组的方法
字符串的方法
(1) toString() , string() : 转化成字符串
eg: var num=10;
var a=num.toString();
var b=string(num);
(2) str.charAt() : 得到字符串的某一位的值
(3) str.search() : 查找是否存在 , 存在返回首次出现的下标 , 不存在返回-1
(4) subString() , substr() : 截取字符串
subString( ) 一个参数时 , 从开始位置直到结束位置
subString( ,) 两个参数时 , 第一个参数是开始位置 , 第二个参数是结束位置 , 表示从开始截取到结束 , 结果含开始位置不含结束位置 (含头不含尾)
substr( , ) 第一个为开始位置 , 第二个为截取个数
(5) str.replace() : 替换字符串 , 第一个参数是字符串 , 第二个参数是替换的内容 , 若字符串有多个, 则替换匹配到的第一个 , 后边重复的不替换
(6) str.split() : 分割字符串 , 将字符串按照参数分割成字符串数组 , 参数为 " " 时按空格逐个分割
(7) str.concat() : 合并字符串 , 多个字符串用逗号隔开
(8) str.toLowerCase() : 全部转化成小写
(9) str.toUpperCase() : 全部转化成大写
(10) str.indexOf(" 字符串" , 开始下标) : 从开始下标处检测字符串中是否含有此字符,不管从第几位开始检索,返回在整个字符串中出现的位置
(11) str.lastIndexOf () : 从最后一位开始查找下标
(12). str.repeat() : 重复字符串
(13) str.includes() : 判断是否含有某个字符
(14) str.padStart() : 补全开头
(15) str.padEnd() : 补全结尾
(16) str.startsWith() : 是否以谁为开头
(17) str.endsWith() : 是否以谁为结尾
数组的方法
1 . 基本方法
(1) arr.push() : 数组结尾位置添加,返回新数组的长度
(2) arr.unshift() : 数组开始位置添加,返回新数组的长度
(3) arr.shift() : 删除数组的第一个元素 , 返回删除元素的值
(4) arr.pop() : 删除数组的最后一个元素, 返回删除元素的值
(5) arr.splice() : 删除 / 添加 / 替换数组的某一部分
arr.splice(开始位置,删除长度) : 两个参数的话 , 即从开始的位置往后删除几个
var arr=[1,6,4,5,8,3,4,9,2];
arr.splice(2,2);
console.log(arr); /* arr=[1,6,8,3,4,9,2] */
arr.splice(开始位置,删除长度,替换元素) : 三个参数的话 , 意味着替换元素 , 代替了删除后的区域
var arr=[1,3,6,5,8,8,9,9,8]
arr.splice(4,3,7);
console.log(arr); /* arr=[1,3,6,5,7,9,8] */
如果第二个参数是0,意思是往数组的中间添加元素
arr.splice(4,0,7);
console.log(arr); /* arr=[1,3,6,5,7,8,8,9,9,8] */
(6) arr.concat() : 合并数组,返回新数组
(7) arr.sort() : 冒泡排序 , 按照字符串比较大小的规则 (ascii码) 对数组进行逐位比较排序
var arr = [1,5,3,7];
arr.sort(function (a,b){
return a-b ;
}); //冒泡排序 , a-b为从小到大排, b-a为从大到小排
console.log(arr);
(8) arr.reverse() : 数组倒序
(9) indexOf() : 查找数组中是否含有某一项 , 如果有返回第一次出现的位置 , 没有返回-1
(10) join() : 数组拼接 , 把数组拼接成一个字符串 , 参数是分隔符 , 参数为空时默认用逗号分隔 ; 参数为空字符串 " " 时没有分隔符 , 直接拼成字符串 , 此方法可以实现重复字符串
2 . 复杂的方法(接受一个函数作为参数)
顺便穿插一个小知识点 : 函数作为参数时叫做回调函数
(11) forEach() : 相当于for循环 , 是数组的方法 , 没有返回值 , 参数为function , function有默认的三个参数:数组每一项 数组下标 数组本身
(12) map() : 映射 , 对数组的每一项运行给定函数 , 返回新的数组 , 原数组没有变
eg: var arr=["12.3","69.9"];
var res=arr.map(function(item){
return item+"¥";
})
console.log(res); // ["12.3¥","69.9¥"]
consoole.log(arr); // ["12.3","69.9"]
(13) filter() : 过滤数组 , 对数组的每一项运行给定一个限制条件的函数 , 返回满足条件的值组成的新数组
(14) every() : 检测数组的每一项是否满足某项条件 , 有一个不满足就返回false
(15) some() : 检测数组的每一项是否满足某项条件 , 只要有一项满足就返回true
(16) find() : 查找符合条件的元素 , 返回的是元素本身 , 有多个时返回第一个元素 , 找不到返回undefined
(17) findIndex() : 查找符合条件元素的下标 , 有多个时返回第一个元素的下标 , 找不到返回-1
ES6新增的方法
(18) Array.of() : 定义数组
(19) Array.from() : 把类数组转化为数组
(20) fill() : 用某个值替换数组的某一部分
(21) flat() : 把多维数组转化为一维数组
(22) copyWithin() : 拿数组的某一部分替换数组的另一部分
(23) includes() : 判断数组里是否有某一项 , 返回布尔值
(24) keys() : 拿到数组的所有键值
(25) values() : 拿得数组的所有value值
注 :
ES6中新增的字符串和数组的方法可去上次发布的文章详查
下一篇: ‘’HELLOWORD''图形用户界面