微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

数组和字符串常用方法

String

1.charat(x) 返回字符串中x(下标)位置的字符

var str = 'yfhxr12345jzsbxgu'
console.log(str.charat(1));//返回字符串中x(下标)位置的字符,找不到返回的是空字符串而不是undefined                               或者是对应的编码值 ,输出f

2.charCodeAt(x) 返回字符的Unicode值

var str = 'yfhxr12345jzsbxgu'
console.log(str.charCodeAt(2));//返回字符的Unicode值//输出104

3.concat(str1,str2) 链接字符串

var str = 'yfhxr12345jzsbxgu'
var a = '你好';
var b = '小鹿'
var s1 = a.concat(b);
var s2 = a.concat(b,str);
console.log(s1);//输出 你好小鹿
console.log(s2);//输出 你好小鹿yfhxr12345jzsbxgu

4.fromCharcode(c1,c2) 将一组Unicode值转化为字符串

var n = String.fromCharCode(65);//返回由指定的UTF-16代码单元序列创建的字符串。
console.log(n);//输出A

5.indexOf(substr, [start]) 找到字符所在的索引

var str = 'yfhxr12345jzsbxgu'
console.log(str.indexOf('x'));//字符第一次出现的索引位置//输出3

6.lastIndexOf(substr, [start]) 字符最后一次出现的索引

var str = 'yfhxr12345jzsbxgu'
console.log(str.lastIndexOf('x'));//字符最后一次出现的索引//输出14

7.match(regexp) 查找正则匹配的字符串

var str="The rain in SPAIN stays mainly in the plain"; 
var n=str.match(/ain/g);
console.log(n);

8.replace(regexp/substr, replacetext) 替换字符

var str = 'yfhxr12345jzsbxgu'
var str1 = str.replace(/x/gi,'77');//只替换第一个字母,后边相同字不替换 g全局匹配,i是不区分大小写
console.log(str1);//输出yfh77r12345jzsbxgu

9.search(regexp) 在字符串中查找指定的子字符串

var str = 'yfhxr12345jzsbxgu'
console.log(str.search(2));//输出6,表示2在下标6的位置上

10.slice(start, [end]) 截取字符串的某个部分,并返回新的字符串

var str = 'yfhxr12345jzsbxgu'//截取字符串,返回新字符串
var b = str.slice(0, [6]);//从第0位截取截取6位
console.log(b);//输出yfhxr1

11.split(delimiter, [limit]) 将字符串分隔为数组

var str = 'yfhxr12345jzfsbxgu'
var arr = str.split("",10);//前一个是分隔符,后一个是分隔的位数
console.log(arr);//输出数组[yfhxr12345]

12.substr(start, [length]) 在字符串中截取指定字符,返回一个新的字符串

var str = 'yfhxr12345jzsbxgu'
console.log(str.substr(5,5));//从下标5开始截取截取5个//输出12345

13.substring(from, to) 截取两个指定下标的字符串并返回成新的字符串

var str = 'yfhxr12345jzsbxgu'
var b = str.substring(0, 6);
console.log(b);//输出yfhxr1

14.toLowerCase() 把字符串转化为小写

var str1 = 'AAABBB';
str1 = str1.toLowerCase();
console.log(str1);//输出aaabbb

15.toupperCase() 把字符串转化为大写

var str1 = 'abcdef';
str1 = str1.toupperCase();
console.log(str1);//输出ABCDEF

16.includes() 查找字符串中是否包含某个字符

var mystring = "Hello, welcome to edureka";
var n = mystring.includes("edureka");
console.log(n);//输出true

17.endsWith() 查找字符串是不是以指定字符结束

var mystr = "List of javascript functions";
var n = mystr.endsWith("ns");
console.log(n);//输出true

18.repeat() 重复字符串几次

var str = '小鹿'
console.log(str.repeat(2));//重复字符串两次

19.valueOf() 相当于转化为字符串

valueOf() 方法返回一个String对象的原始值(primitive value),该值等同于String.prototype.toString()

var mystr = "Hello World!";
var res = mystr.valueOf();
console.log(res);//输出Hello World!

20.trim() 从字符串两端删除空白字符

var str = "     Hello Edureka!     ";
alert(str.trim());//输出Hello Edureka!

Array

1.push() 向数组的最后一位添加一个或者多个新的数组元素,并返回长度

var arr = [1, 2, 3];
var a = arr.push(4, 'pink');
console.log(a);
console.log(arr);

​ (1) push()是可以给数组追加新的元素

​ (2) push() 参数直接写 数组元素就可以了

​ (3) push完毕之后,返回的结果是 新数组的长度

​ (4) 原数组也会发生变化

2.unshift() 向数组第一位添加一个或多个新的数组元素,并返回长度

var arr = [1, 2, 3];
console.log(arr.unshift('red', 'purple'));
console.log(arr);

​ (1) unshift是可以给数组前面追加新的元素

​ (2) unshift() 参数直接写数组元素就可以了

​ (3) unshift完毕之后,返回的结果是 新数组的长度

​ (4) 原数组也会发生变化

3.pop() 它可以删除数组的最后一个元素

var arr = [1, 2, 3]; 
console.log(arr.pop());  //输出3
console.log(arr);  //输出(2) [1, 2]

​ (1) pop是可以删除数组的最后一个元素 记住一次只能删除一个元素

​ (2) pop() 没有参数

​ (3) pop完毕之后,返回的结果是 删除的那个元素

​ (4) 原数组也会发生变化

4.shift() 它可以删除数组的第一个元素

var arr = [1, 2, 3]; 
console.log(arr.shift()); //输出1
console.log(arr); //输出(2) [2, 3]

​ (1) shift是可以删除数组的第一个元素 记住一次只能删除一个元素

​ (2) shift() 没有参数

​ (3) shift完毕之后,返回的结果是 删除的那个元素

​ (4) 原数组也会发生变化

5.Array.isArray() 用于确定传递的值是否是一个 Array(判断它是不是个数组) 返回false或者true

console.log(Array.isArray([1,2,3])); Array.isArray([1,2,3]); // true
console.log(Array.isArray()); // false

6.splice()修改原数组

​ 通过删除现有元素和/或添加新元素来更改一个数组的内容

splice(2,2)  //删除数组下标为2的后两位
splice(2,1’,0) //给数组下标为2的后边添加内容为‘1’
var arr = [1,2,3];
var a = arr.splice(1,2,5);//返回要修改的下标为1的值
console.log(a);  //(2) [2, 3]
console.log(arr); //(2) [1, 5]
console.log(arr.splice(1)); //[5]

7.**slice()**截取数组(不包含终止位) 不影响原数组 ,返回截取后的数组

var arr = [1,2,3];
console.log(arr.slice(0,2));//下标,切割位数

8.**concat()**合并数组 该方法不会改变现有的数组,仅仅会返回被连接数组的一个副本。

var arr = [1,2,1,2,1,2,1]
var arry = [3,1,3,1,3,13,1]
ar = arr.concat(arry)
console.log(ar); //输出(14) [1, 2, 1, 2, 1, 2, 1, 3, 1, 3, 1, 3, 13, 1]

9.join() 方法用于把数组中的所有元素放入一个字符串,元素是通过指定的分隔符进行分隔的。

var arr = [1,2,3]
var b = arr.join() //输出1,2,3
console.log(b);
var a = arr.join('.')//输出1.2.3  不会改变原来的数组
console.log(a);

10.**reverse()**方法 可以颠倒数组中元素的顺序

var arr = [1,2,3]
var a = arr.reverse()//返回结果[3,2,1]会改变原来的数组
console.log(a);

11.sort() 方法 对数组中的元素进行排序

var arr = [1,2,3,5,4,6,8,9,7]
var a = arr.sort()//得到[1, 2, 3, 4, 5, 6, 7, 8, 9],会改变原来数组
console.log(a);

12.forEach(function),用于调用数组的每个元素,按顺序快速遍历数组里每个值,并将元素传递给回调函数,原数组不变。

(注意该方法和map的区别,若直接打印Array.forEach,结果为undefined)。

var arr = [10,5,3,7];
arr.forEach(val =>{
    console.log(val);  //10 5 3 7
});

13.reduce(function),reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

// 执行过程:每个值执行一次函数
var arr = [10,5,3,7];
var result = arr.reduce((sum,val) =>{
    sum += val;
    return sum;//一定要return值给下一次循环sum初始值
},0);//累加初始值
console.log(result);//25

14.indexOf() 检测当前值在数组中第一次出现的位置索引

​ 参数:array.indexOf(item,start) item:查找的元素 start:字符串中开始检索的位置。

​ 返回值:第一次查到的索引,未找到返回-1。

​ 是否改变原数组:不改变。

var arr = [1,2,3,4,6,4];
console.log(arr.indexOf(4)); //输出3
console.log(arr.indexOf(4,4)); //输出5

15.lastIndexOf() 检测当前值在数组中最后次出现的位置索引

​ 参数:array.indexOf(item,start) item:查找的元素 start:字符串中开始检索的位置。

​ 返回值:第一次查到的索引,未找到返回-1。

​ 是否改变原数组:不改变。

var arr = [1,2,3,4,6,4];
console.log(arr.lastIndexOf(4));  //输出5

原文地址:https://www.jb51.cc/wenti/3284543.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐