js字符串分割处理的几种方法(6种)
作者:傲娇味的草莓 发布时间:2024-11-21 13:10:55
前端开发中,字符串处理是比较常见的,笔者在最近复习的过程中也把它整理了出来。
首先,先来看看js截取三姐妹substring()、subsstr()、slice()
1、slice(start, end)
大姐slice()、从start开始,到end结束,开始的位置从0不是1,不包括end,支持数组分割,支持负数,返回数组
let test = 'hello world!'
console.log(test.length)
console.log(test.slice(1, 9))
console.log(test.slice(6))
console.log(test.slice(9, 1))
console.log(test.slice(-2))
console.log(test.slice(0, -2))
console.log(test.slice(-4, -2))
console.log(test.slice(-2, 4))
总结
①第一个参数比第二个参数大,结果返回空字符串
②传入参数是负数,slice()会先做运算 test.length + 负数参数。
2、substr(start, length)
二姐substr()、从start开始,返回length长度字符,开始的位置从0不是1,支持负数,不支持数组
let test = 'hello world!'
console.log(test.length)
console.log(test.substr(1, 9))
console.log(test.substr(6))
console.log(test.substr(9, 9))
console.log(test.substr(20))
console.log(test.substr(-2))
console.log(test.substr(-8, 4))
console.log(test.substr(-8, 0))
console.log(test.substr(-8, -4))
console.log(test.substr(-20))
总结
①传入参数超过length返回空字符串
②传入负数,则从字符串的尾部开始算起始位置,-1指最后一个字符,-2指倒数第二个字符;当传入的第一个参数是负数且它的绝对值超过length,这个负数转化为0,当传入的第二个参数是负数,等价于0,截取0个字符,返回空字符串。
3、substring(start, stop)
三姐substring()、不接受负数,从 start 开始,不包括stop,开始的位置从0不是1,不支持数组
let test = 'hello world!'
console.log(test.length)
console.log(test.substring(1, 9))
console.log(test.substring(6))
console.log(test.substring(9, 9))
console.log(test.substring(20))
console.log(test.substring(-2))
console.log(test.substring(-8, 4))
console.log(test.substring(-8, 0))
console.log(test.substring(-8, -4))
console.log(test.substring(-20))
总结
①第二个参数==第一个参数,返回空字符串
②传入两个参数,不管在第一还是第二位置,都会将小的参数作为第一个参数,较大的作为第二个参数
③任何一个参数为负数或者NaN的时候,自动将其转换为0
④任何一个参数大于length,按照length处理
js字符串截取三姐妹,都不会对原始的字符串进行修改,而是返回新的子集。但是三姐妹各自有各自的个性,面对同一种参数处理的方式都是不一样的。
4、split(separator, length)
字符按照字符串或正则分割,输出一个数组,length表示返回的长度,不支持数组;
//以空格为分隔符输出数组
var str = '123 abc 1 2 3 a b c '
var arr = str.split(' ')
console.log(arr)
var str = '123 abc 1 2 3 a b c'
var arr = str.split(' ', 4)
//第二个参数表示返回数组的最大长度!注意不是原来字符串的,是新输出的数组的
console.log(arr)
5、join(separator)
将数组合并成字符串,用 separator隔离,不支持字符串
var a = ['I', 'am', 'a', 'girl', '英文名', '是', 'gaby']
var arr = a.join(',')
console.log(arr)
6、splice(start, length, …args)
数组操作函数,增删改查,不支持字符串,返回数组,从 start开始,删除的length长度,并按args参数个数添加到 start位置
//删,第一个参数为第一项位置,第二个参数为要删除几个 0数起
//array.splice(index,num),返回值为删除内容,array为结果值
var arr = ['a', 'b', 'c', 'd', 'e', 'f']
console.log(arr.splice(0, 4))
console.log(arr)
//增,第一个参数(插入位置),第二个参数(0),第三个参数(插入的项)
//array.splice(index,0,insertValue),返回值为空数组,array值为最终结果值
var arr = ['a', 'b', 'c', 'd', 'e', 'f']
console.log(arr.splice(2, 0, 'insert'))
console.log(arr)
//改 第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)
//array.splice(index,num,insertValue),返回值为删除内容,array为结果值
var arr = ['a', 'b', 'c', 'd', 'e', 'f']
console.log(arr.splice(2, 1, 'delete'))
console.log(arr)
来源:https://blog.csdn.net/weixin_45709829/article/details/123810150
猜你喜欢
- 前言现在的面试真的是越来越卷了,算法已经成为了面试过程中必不可少的一个环节,你如果想进稍微好一点的公司,「算法是必不可少的一个环节」。那么如
- 背景说明:10 * time.Second //正常数字相乘没错但是package mainimport "time"f
- ScrapyScrapy是一个比较好用的Python爬虫框架,你只需要编写几个组件就可以实现网页数据的爬取。但是当我们要爬取的页面非常多的时
- 本文实例讲述了python使用post提交数据到远程url的方法。分享给大家供大家参考。具体如下:import sys, urllib2,
- 在本章中,我们将学习如何使用 Bootstrap 创建表单。Bootstrap 通过一些简单的 HTML 标签和扩展的类即可创建
- react-native安装流程1.npx react-native init AwesomeProject报错运行 cd ./demo/i
- 下表列出了所有Python语言支持的算术运算符。假设变量a持有10和变量b持有20,则: 例子:试试下面的例子就明白了所有的Pyt
- 本文实例为大家分享了由Python编写的MySQL管理工具的具体代码,供大家参考,具体内容如下import pymysqlimport pa
- 本文为大家分享一个简单商城购物车的python代码,供大家参考,具体内容如下要求:1、写一段商城程购物车序的代码2、用列表把商城的商品清单存
- 本文实例讲述了golang实现sql结果集以json格式输出的方法。分享给大家供大家参考,具体如下:func getJSON(sqlStri
- 1. 简介大家都知道,在数据库中间件读写分离应用场景中,如何保证底层数据库出现故障节点的时,中间件可以快速断开或迁移数据库连接,让用户无感知
- 当mysql跨越互联网进行复制时别人可以窃取到mysql的复制信息,这些信息是明文的,因此存在不安全性,这里通过ssl对复制的信息进行加密。
- 功能所在位置该功能运用了django.contrib.messages这个库,再django项目中srtting.py文件中的38行,APP
- 1. 真值测试所谓真值测试,是指当一种类型对象出现在if或者while条件语句中时,对象值表现为True或者False。弄清楚各种情况下的真
- 简介在各个语言之中都有时间类型的处理,因为这个地球是圆的(我仿佛在讲废话),有多个时区,每个时区的时间不一样,在程序中有必要存在一种方式,或
- Keras提供了一些用ImageNet训练过的模型:Xception,VGG16,VGG19,ResNet50,InceptionV3。在使
- 如下所示:logging: config: classpath:spring-logback.xml pattern: console: &
- 一、引言有一定 Python 编程经验的人估计十有八九使用过异常,异常对于程序的健壮性是毋庸置疑的。二、使用异常对数据进行初始化在某些条件下
- 很多朋友想用SQL2000数据库的编程方法,但是却又苦于自己是学ACCESS的,对SQL只是一点点的了解而已,这里我给大家提供以下参考---
- 一般不建议做第4,6两步,第4步不安全,有可能损坏数据库或丢失数据。第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复。