字符串和数组最易混淆的常用方法

最近面试的小伙伴比较多,字符串和数组的操作肯定会被面试者问到,下面就总结一下容易混淆的常用方法。

一、字符串截取

1、slice方法返回字符串的片段。

strObj.slice(start[,end])

说明:

start下标从0开始的strObj指定部分其实索引。如果start为负,将它作为length+start处理,此处length为字符串的长度。

end小标从0开始的strObj指定部分结束索引。如果end为负,将它作为length+end处理,此处length为字符串的长度。

例如:

012345

var str = "ABCDEF";

str.slice(2,4);

结果:CD

2、substring方法返回位于String对象中指定位置的子字符串。

strObj.substring(start,end)

说明:

start指明子字符串的起始位置,该索引从0开始起算。

end指明子字符串的结束位置,该索引从0开始起算。

substring方法使用start和end两者中的较小值作为子字符串的起始点。如果start或end为NaN或者为负数,那么将其替换为0。

例如:

012345

var str = "ABCDEF";

str.substring(2,4); // 或 str.substring(4,2);

结果:CD

3、substr方法返回一个从指定位置开始的指定长度的子字符串。

strObj.substr(start[,length])

说明:

start所需的子字符串的起始位置。字符串中的第一个字符的索引为0。

length在返回的子字符串中应包括的字符个数。

例如:

012345

var str = "ABCDEF";

str.substr(2,4);

结果:CDEF

4、split分割为子字符串,然后将结果作为字符串数组返回。

strObj.split([separator[,limit]])

说明:

separator字符串或 正则表达式 对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽略该选项,返回包含整个字符串的单一元素数组。

limit该值用来限制返回数组中的元素个数。

例如:

var str = "AA BB CC DD EE FF";

alert(str.split(" ",3));

结果:

AA,BB,CC

二、数组截取

1、slice

slice是指定在一个数组中的元素创建一个新的数组,即原数组不会变

数组的 slice 需要两个参数,起点和终点。它会返回一个包含了从起点开始,到终点之前之间所有元素的新数组。

'abc'.slice(1,2) // "b"

[14, 3, 77].slice(1, 2) // [3]

2、splice

splice是JS中数组功能最强大的方法,它能够实现对数组元素的删除、插入、替换操作,返回值为被操作的值。上海尚学堂web前端培训技术文章,多多关注。

splice删除:arr.splice(1,2) (删除arr中的1、2两项);

splice插入:arr.splice(1,0,'brown','pink') (在arr键值为1的元素前插入两个值);

splice替换:arr.splice(1,2,'brown','pink') (在arr中替换1、2元素);

除此之外,splice 还会改变原数组。不要太惊讶,这正是 splice 的本意。

var x = [14, 3, 77]

var y = x.splice(1, 2)

console.log(x) // [14]

console.log(y) // [3, 77]

3、sort数字排序

//指定排序函数

function sortNumber(a,b){

return a - b

}

var arr = new Array(10, 5, 40, 25, 1000, 1);

document.write(arr + "<br />")

document.write(arr.sort(sortNumber))

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31494694/viewspace-2147200/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31494694/viewspace-2147200/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值