js中字符串与数组常用的属性和方法

string常用方法

1.substring(start,end); 截取指定的字符位数但不包含结束位置的字符,两个参数(开始位置的索引,结束位置索引)只写一个参数表示从开始位置截取到最后。(输入负值时将负值变为0,哪个较小作为开始位置)
let str=‘abcdefg’;
str.substring(1); //得到bcdefg
str.substring(1,3); //得到bc

2.slice(start,end); 基本和substring相似,区别在参数为负数。(输入负值时 值与字符串的长度相加)
let str=‘abcdefg’;
str.slice(1); //bcdefg
str.substring(1,3); // bc

3.substr(start,end); 两个参数(开始位置索引,需要返回的字符个数)
let str=‘abcdefg’;
str.substr(1); //bcdefg
str.substr(1,1); //b

4.charAt(index); 方法返回指定索引位置处的字符。如果超出有效范围则返回空字符串.
let str=‘abcdefg’;
str.charAt(2); // c

5.indexOf(string); 返回String对象内第一次出现子字符串位置。如果没有找到子字符串,则返回-1。
let str=‘abcdefga’;
str.indexOf(‘a’); // 0
str.indexOf(‘h’); //-1

6.lastIndexOf(string); (倒叙查找)返回String对象内最后一次出现子字符串位置。如果没有找到子字符串,则返回-1。
var str=‘abcdefga’;
str.lastIndexOf(‘a’); // 7

7.search(); 方法返回与正则表达式查找内容匹配的第一个字符串的位置。

8.includes(); 方法用于查看是否包含某个字符, 如果包含返回true , 否则返回false
let str = “Hello World”;
console.log(str.includes(“l”)); // true
console.log(str.includes(“M”)); // false

9.startsWith(); 和endsWith(); 方法分别用于检测开始字符和结束字符
let str = “Hello World”;
console.log(str.startsWith(“H”)); // true
console.log(str.endsWith(“d”)); // true
console.log(str.endsWith(“z”)); // false

10.trim() 方法用于去除字符串两端空白, 这个方法在表单验证里面经常会使用。它会创建一个字符串副本, 删除前置以及后缀的所有空格。(注:不会去除字符中间的代码)
let str = " Hello World ";
let newStr = str.trim();
console.log(str); // Hello World
console.log(newStr); //Hello World

  1. trimLeft()和 trimRight();方法
    用法和trim() 方法一致,
    trimLeft()去最左边的空格
    trimRight()去最右边的空格

12.repeat() 方法接收一个参数, 为字符串重复的次数。
let str = “Hello”;
console.log(str.repeat(3)); // HelloHelloHello

  1. toLowerCase()和 toUpperCase() ̶字符串大小写转换
    let str = “HELLO”;
    console.log(str.toLowerCase()); // hello
    str = “hello”;
    console.log(str.toUpperCase()); // HELLO

数组常用的方法

1.push()和 pop() 方法:用于向数组的最后添加/删除数据
let arr = [];
arr.push(“red”,“blue”);
console.log(arr); // [ ‘red’, ‘blue’ ]
let j = arr.pop();
console.log(arr); // [ ‘red’ ]

2.shift()方法:删除数组第一个数据并返回被删除的数据
let arr=[“red”,“blue”,“black”];
let sheft=arr.shift();
console.log(sheft); //red
console.log(arr); //[ ‘blue’, ‘black’ ]

3.unshift()方法:向数组最开始的位置添加数据
let arr=[“red”,“blue”,“black”];
arr.unshift(“pink”);
console.log(arr); //[ ‘pink’, ‘red’, ‘blue’, ‘black’ ]

4.concat() 方法:先创建当前数组的一个副本,然后将接收到的参数添加到副本的末尾, 最后返回新构建的数组, 而原本的数组不会变化。
let arr = [1,2,3];
let arr2 = arr.concat(“red”,“blue”);
console.log(arr);//[ 1, 2, 3 ]
console.log(arr2);//[ 1, 2, 3, ‘red’, ‘blue’ ]

5.slice()方法:截取指定范围的参数返回一个新数组(1个参数时:从下标为参数的位置开始截取。2个参数时:从下标为第一个参数的位置开始截取到第二个参数的位置但不包括第二个参数的位置)
let arr=[“red”,“blue”,“black”,“pink”];
let arr2=arr.slice(1);
let arr3=arr.slice(1,3);
console.log(arr2);//[ ‘blue’, ‘black’, ‘pink’ ]
console.log(arr3);//[ ‘blue’, ‘black’ ]

6.splice() 方法:可以实现对数组的删除,插入和替换的操作, 相当于是增删改操作都可以用这个方法来实现。
6-1.删除(传两个参数)
let arr = [1,2,3,4,5,6,7,8,9,10]; //i
// 从下标为3的元素开始删除,删除5个元素
//将删除的元素返回给i
let i = arr.splice(3,5);
console.log(i); // [ 4, 5, 6, 7, 8 ]
console.log(arr); // [ 1, 2, 3, 9, 10 ]

6-2.插入/添加
	let arr = [1,2,3,4,5,6,7,8,9,10]; 
	let i = arr.splice(3,0,"red","blue"); //  从下标为3的元素开始插入
	console.log(i); // [] 
	console.log(arr); // [ 1, 2, 3, 'red', 'blue', 4, 5, 6, 7, 8, 9, 10 ]

6-3.替换/修改数据
	let arr = [1,2,3,4,5,6,7,8,9,10]; 
	let i = arr.splice(3,2,"red","blue"); //从下标为3的元素开始修改,修改2个,修改为"red"和"blue"
	console.log(i); // [ 4, 5 ] 
	console.log(arr); // [ 1, 2, 3, 'red', 'blue', 6, 7, 8, 9, 10 ]

7.join() 方法:将数组转换为字符串,可以传入分隔符作为参数
let arr = [1,2,3];
let str = arr.join("");
console.log(str); // 123
let str2 = arr.join(",");
console.log(str2); // 1,2,3

8.split() 方法:将字符串转换为数组,可以传入参数指明以什么作为分隔符
let str = “Hello”;
let arr = str.split("");
console.log(arr); // [ ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ]
let arr2 = str.split(“l”);
console.log(arr2); // [ ‘He’, ‘’, ‘o’ ]

  1. reverse() 方法:用于反转数组项的顺序
    let arr = [1,2,3,4,5];
    console.log(arr.reverse()); // [ 5, 4, 3, 2, 1 ]
    console.log(arr); // [ 5, 4, 3, 2, 1 ]

10.sort() 方法:将数组中的数字排序
10-1.按从小到大的顺序
let arr = [0, 12, 3, 7, -12, 23];
console.log(arr.sort()); // [ -12, 0, 12, 23, 3, 7 ]
或:
let arr = [0, 12, 3, 7, -12, 23];
console.log(arr.sort(function (a, b) {
return a - b;
}));// [ -12, 0, 12, 23, 3, 7 ]

10-2.按从大到小的顺序:
	let arr = [0, 12, 3, 7, -12, 23];
	console.log(arr.sort(function (a, b) {
		 return b - a;
	}));//[ 23, 12, 7, 3, 0, -12 ]

11.indexOf() 方法:查找参数第一次出现的位置下标(若没有则返回-1)
let arr = [“H”,“e”,“l”,“l”,“o”];
console.log(arr.indexOf(“l”)); // 2

  1. lastIndexOf() 方法:查找参数最后一次出现的位置下标(若没有则返回-1)
    let arr = [“H”,“e”,“l”,“l”,“o”];
    console.log(arr.lastIndexOf(“l”)); // 3
    console.log(arr.indexOf(“z”)); // -1
    注:indexOf()和lastIndexOf()方法在查找时用的是全等比较
    let arr = [“1”,“2”,“3”];
    console.log(arr.indexOf(1)); // -1

13.includes() 方法:查看数组里是否包含某个元素,包含则返回true,否则返回false
let arr = [“1”,“2”,“3”];
console.log(arr.includes(2)); // flase
console.log(arr.includes(“2”)); // true
console.log(arr.includes(7)); // false

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值