欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

总结字符串和数组的方法

程序员文章站 2024-03-22 23:26:40
...

字符串的方法

(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中新增的字符串和数组的方法可去上次发布的文章详查