js中的split()⽅法的⽤法
最近遇到字符分隔问题,再此简单的额总结⼀下:
⼀、split()⽅法
⽤于把⼀个字符串分割成字符串数组;
stringObject.split(separator,howmany),separator:必需。字符串或正则表达式,从该参数指定的地⽅分隔stringObject;howmany:可选。该参数可指定返回的数组的最⼤长度。如果设置了该参数,返回的⼦串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串会被分隔,不考虑它的长度。
返回值是⼀个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成⼦串创建的。返回的数组中的字串不包括 separator ⾃⾝,但是,如果 separator 是包含⼦表达式的正则表达式,那么返回的数组中包括与这些⼦表达式匹配的字串(但不包括与整个正则表达式匹配的⽂本)。
备注:
如果把空字符串 ("") ⽤作 separator,那么 stringObject 中的每个字符之间都会被分割,原字符串保持不变。
String.split() 执⾏的操作与 Array.join 执⾏的操作是相反的。
这⾥写⼏个简单的字符串分隔的例⼦
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>split⽅法</title>
</head>
<body>
<div class="box">
<p id="first"></p>
<p id="second"></p>
<p id="third"></p>
<p id="forth"></p>
<p id="fifth"></p>
</div>
<script type="text/javascript">
var str="hello world && good morning";
</script>
</body>
</html>
返回结果如下图:
⼆、splice()⽅法
从数组中添加/删除项⽬,然后返回被删除的项⽬。(该⽅法会改变原始数组)。
语法:arrayObject.splice(index,howmany,item1,...,itemX)
index:必需。整数规定添加/删除项⽬的位置,使⽤负数可以从数组尾部处规定位置。
howmany:必需。要删除的项⽬数量。如果设置为0,则不会删除项⽬。
item1,...,itemX:可选,向数组中添加新项⽬。
返回值:Array,包含被删除项⽬的新数组,如果有的话
splice()⽅法可删除从index处开始的零个或多个元素,并且⽤参数列表中声明的⼀个或多个值来替换那些被删除的元素。如果从arrayObject中删除元素,则返回的是修改后的数组。
备注:
splice()⽅法与slice()⽅法作⽤是不同的,splice()⽅法会直接对数组进⾏修改,原数组改变与返回的结果相同。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>splice⽅法</title>
<style>
.wrapper{
position: relative;
width: 80%;
margin: 50px auto;
font: 14px/1.5 "microsoft yahei";
}
.wrapper p:nth-child(2n){
margin: 10px 0;
background: #EEEEEE;
}
</style>
</head>
<body>
<div class="wrapper">
<p id="test"></p>
</div>
<script>
var arr=['Geoery','John','Thomas','Adrew','Martin'];
</script>
</body>
</html>
三、slice()⽅法
slice()⽅法可以从已有的数组中返回选定的元素。
语法:arrayObject.slice(start,end)
start:必选。规定从何处开始选取,如果是负数,那么它规定从数组尾部开始算起的位置。
也就是说-1指倒数第⼀个元素,-2指倒数第⼆个元素,以此类推。
end:可选,规定从何处结束选取。该参数是数组⽚断结束出的数组下标。如果没有指定该参数,
那么切分的数组包括从start到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。(不包括该元素)
返回的结果是截取后的数组,不会对原数组造成任何影响。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>js slice 测试</title>
<style>
.container{
position: relative;
width: 80%;
font-size: 14px;
margin: 30px auto;
}
.container p{
line-height: 1.5;
margin-top: 10px;
}
</style>
</head>
<body>
<div class="container">
<div>
<p id="test1" ></p>
<p id="test2" ></p>
</div>
</div>
<script>
var arr=new Array(3);
arr[0]='Hello';
arr[1]='World';
arr[2]='!';
var ElementById('test1');
var ElementById('test2');
test1.innerHTML='原数据:'+arr+'<br/>';
test1.innerHTML+='截取到1:'+arr.slice(1);
test1.innerHTML+='<br/>原数组据:'+arr;
var str='中华⼈民共和国';
var str2='请注意,该⽅法并不会修改数组,⽽是返回⼀个⼦数组。如果想删除数组中的⼀段元素,应该使⽤⽅法 Array.splic';
test2.innerHTML='原句:'+str2+'<br/>';
java中split的用法test2.innerHTML+='截取前4个:'+str2.slice(0,20)+'......';
</script>
</body>
</html>
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论