区分几个js常用的字符串处理方法和数组操作方法

1、常用数组操作的方法:


Array.concat() 连接数组
Array.push() 尾部添加
Array.pop() 尾部删除
Array.unshift() 头部添加
Array.shift() 头部删除
Array.splice(index,many,item1,…,itemX) 插入、删除或替换数组的元素 当不带item1..时是删除,带item时是替换或者插入取决于many的取值
Array.slice(start,end) 返回数组的一部分
Array.join() 将数组元素连接起来以构建一个字符串

Array.indexOf(x)查找数组中是否有元素x,没有返回-1,有返回下标
Array.sort() 对数组进行排序

[0,-1,3,10,7].sort((a,b)=>a-b)  //正序排列->从小到大
[0,-1,3,10,7].sort((a,b)=>b-a)  //逆序排列->从大到小

Array.some() 检测数组中是否有元素满足指定条件

var ages = [3, 10, 18, 20];

function checkAdult(age) {
    return age >= 18;
}

ages.some(checkAdult); //返回true


//如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
//如果没有满足条件的元素,则返回false。

Array.every() 检测数组中的元素是否都满足指定条件

array.every(function(item,index,array){
    //item:当前元素的值;

    //index:当前元素的索引;

    // array:当前元素的数组对象;
})


//如果所有元素都满足条件,则返回true;
//如果数组中检测到有一个元素不满足,则整个表达式返回false,且剩余的元素不会再进行检测。

2、常用字符串处理方法


concat:
将两个或多个字符的文本组合起来,返回一个新的字符串。

var a = "hello";
var b = ",world";
var c = a.concat(b);
alert(c);
//c = "hello,world"

substring:
返回字符串的一个子串,传入参数是起始位置和结束位置。

var a = "hello";
var sub_string1 = a.substring(1);
//sub_string1 = "ello"
var sub_string2 = a.substring(1,4); //从索引1开始到4(不包括4)
//sub_string2 = "ell"

substr:
 可在字符串中抽取从 start 下标开始的指定数目的字符。

substr(start,length)
/*start:起始下标。如果是负数,那么从字符串的尾部开始算起的位置。即-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。
length:	可选。子串中的字符数。必须是数值。*/

var a = 'hello';
var substr1 = a.substr(0,2) //"he"
var substr2 = a.substr(1) //"ello"
var substr3 = a.substr(-3,2) //"o" 从倒数第三个开始切,取两个字符

slice:
提取字符串的一部分,并返回一个新字符串(与 substring 相同,唯一区别是slice可以传负数,而substring不行)。

var a = "hello";
var slice1= a.slice(1);
//slice1= "ello"
var slice2= a.slice(1,4);
//slice2= "ell"
var slice3 = a.slice(-3,-1);
//slice3 = "ll" 倒数第三个到倒数第一个(不含)

split:

用传入的字符划分字符串,得到一个数组(不会改变原字符串)

var a = "hello";
var arr1 = a.split("");
//arr1 = [h,e,l,l,o]

replace:

替换字符串中的某些字符,默认只替换第一个出现的字符(不会改变原来的字符串,会返回一个新的字符串)

'abcad'.replace('a','m') //'mbcad'
'abcad'.replace(/a/g,'m') //'mbcmd' 希望全局替换则需要添加/g全局匹配修饰符

includes:

判断字符串中是否有(数组同样有这个方法)

let url1 = "git://abcd.com";
url1.includes('.co')//true

注:splice、slice、substring、substr四个函数的区别

①splice() :数组 (会影响原数组,其他三个不会)

向数组(只有数组有这个方法)中添加/删除项目,然后返回被删除的项目。该方法会改变原始数组。(index可以传负数,当howmany为0时,就向指定的index后面添加元素)

splice(index,howmany,item1,.....,itemX)    (index、howmany必须)

②slice():数组、字符串

数组、字符串都能用,可以传负数,slice(start,end)

③substring():字符串

只有字符串能用,不能传负数,substring(start,end)

④substr():字符串

只有字符串能用,可以传负数,substr(start,length)

综上:slice是最适用的方法,基本包含了其他几个方法的优点

3、最后补充两个正则判断:

手机号格式判断

String.prototype.isMobile = function(){
	return /^0{0,1}13[0-9]{9}$/.test(this);
}

邮件格式判断

String.prototype.isEmail = function(){
	return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(this);
}

 身份证格式判断

isCardNo(card) {
	var pattern = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
	return pattern.test(card);
},

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值