位置: 编程技术 - 正文

深入浅析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性(java script)

编辑:rootadmin

推荐整理分享深入浅析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性(java script),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascrip的特点有哪些?,javasripe,java scripts,javascripvoid,javascrip的特点有哪些?,javascripvoid,深入浅析是什么意思,javascripvoid,内容如对您有帮助,希望把文章链接给更多的朋友!

在截取字符串时常常会用到substr()、substring()、slice()方法,有时混淆之间的用法,故总结下。

阅读目录&#;slice()&#;substring()&#;substr()&#;总结

slice()

定义:接受一个或者两个参数,第一个参数指定子字符串的开始位置。第二个参数表示子字符串的结束位置(不包括结束位置的那个字符),如果没有传递第二个参数,则将字符串的长度作为结束位置。

1、传递参数为正值情况:

2、传递参数为负值的情况:

3、第二个参数比第一个参数值小的情况:

slice()方法传入的第二个参数比第一个参数小的话,则返回空字符串。

4、IE兼容性

在IE8浏览器测试下,没啥问题,行为与现代浏览器一致。

substring()

定义:接受一个或者两个参数,第一个参数指定子字符串的开始位置。第二个参数表示子字符串的结束位置(不包括结束位置的那个字符),如果没有传递第二个参数,则将字符串的长度作为结束位置。

1、传递参数为正值情况:与slice()方法行为相同的

2、传递参数为负值的情况:

substring()方法会把所有负值参数转换为0。来看下例子:

substring()方法会将较小的数作为开始位置,将较大的数作为结束位置。如上面的例子substring(3,0) 与substring(0,3)是一样效果的。

4、IE兼容性

深入浅析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性(java script)

在IE8浏览器测试下,没啥问题,行为与现代浏览器一致。

substr()

定义:接受一个或者两个参数,第一个参数指定子字符串的开始位置。第二个参数跟之前的方法有些区别,表示返回的字符个数。如果没有传递第二个参数,则将字符串的长度作为结束位置。来看例子:

1、传递参数为正值情况:

2、传递参数为负值的情况:

substr()方法会将负的第一个参数加上字符串的长度,而将负的第二个参数转换为0。

3、IE兼容性

substr()方法传递负值的情况下会存在问题,会返回原始的字符串。IE9修复了此问题。

总结

在传递正值参数情况下,slice() 和 substring () 行为是一致的,substr()方法在第二个参数上会容易混淆

在传递负值参数情况下,slice() 方法是通过字符串长度相加,符合一般思维,substring()第二个参数转换为0会容易出问题,起始位置会容易变更,substr() 方法负值情况下会出现IE兼容性问题。

综上,小弟一般推荐使用slice()方法。

下面给大家介绍slice,substr和substring的区别

首先,他们都接收两个参数,slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度。直接看下面例子:

这里有个需要注意的地方就是:substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置。

如:

接着,当接收的参数是负数时,slice会将它字符串的长度与对应的负数相加,结果作为参数;substr则仅仅是将第一个参数与字符串长度相加后的结果作为第一个参数;substring则干脆将负参数都直接转换为0。测试代码如下:

注意:IE对substr接收负值的处理有错,它会返回原始字符串。

javascript针对不确定函数的执行方法 本文实例分析了javascript针对不确定函数的执行方法。分享给大家供大家参考,具体如下:在javascript中,有时候只知道一个函数的名字,但并不确定该函

Perl Substr()函数及函数的应用 perlsubstr()函数例子,substr()函数实例代码-返回EXPR的子字符串,起始是为字符串内的偏移量OFFSET。语法:substrEXPR,OFFSET,LEN,REPLACEMENTsubstrEXPR,OFFSET,LENsubstrEXPR

javascript数组克隆简单实现方法 本文实例讲述了javascript数组克隆简单实现方法。分享给大家供大家参考,具体如下:htmlheadmetahttp-equiv="Content-Type"content="text/html;charset=gb"title新建网页

标签: java script

本文链接地址:https://www.jiuchutong.com/biancheng/387145.html 转载请保留说明!

上一篇:js如何判断输入字符串长度(js如何判断输入输出)

下一篇:javascript针对不确定函数的执行方法(js方法不执行)

  • 金税四期不会对个人产生影响
  • 报销为什么不能多家赔付
  • 金蝶固定资产累计折旧怎么改
  • 什么情况可以安排待岗
  • 固定资产加速折旧税收优惠政策
  • 库存完工产品属于什么会计科目,什么类别
  • 外商投资企业国内上市最新政策
  • 12月份的收入1月份开具发票,报税时免税吗
  • 出售无形资产的会计科目
  • 桂林军工企业单位有哪些
  • 个人给公司开票税率
  • 模拟评估了是什么意思
  • 企业所得税的纳税人和负税人一致吗
  • 调整期初数怎么做会计分录
  • 车辆完税证明怎么弄
  • 为什么win10系统更新不了
  • 企业开办费的会计分录
  • 会计中记账凭证的名词解释
  • 为员工购买商业保险的通知
  • 苹果推送最新系统怎么关
  • 滴水观音的养殖方法选好浇水
  • PHP:mcrypt_enc_self_test()的用法_Mcrypt函数
  • 收不回的应收账款分录
  • 慕尼黑基姆湖
  • 利润表本月数可以不填吗
  • eslint vue配置
  • php graph
  • thinkphp框架介绍
  • 微信php开发教程
  • 房地产企业销售佣金税前扣除
  • php常用类
  • java中文乱码解决总结
  • jquery获取值的几种方法
  • 关于高德地图的分析报告
  • 收回已核销的坏账并入账是什么意思
  • 研发费用资本化计入什么科目
  • 进项税额转出最后怎么处理
  • java中同步
  • sql执行顺序优先级
  • 一般纳税人会计做账的基本流程
  • 对公账户分类及区别
  • MySQL Replace INTO的使用
  • 一般纳税人进项销项抵扣如何做账
  • 现金流量表两年数据分析
  • 支付的税费现金流量表公式
  • 库存现金管理是财务分析的吗
  • 税控盘服务费小规模可以抵扣吗
  • 发行价格另支付发行费用
  • 行政单位收到的待报解预算收入怎么做账
  • 股东投资款是否要缴税
  • 自然人系统如何恢复数据
  • 党建经费可以购买什么
  • 小规模纳税人从三万到十万
  • 出纳可以做库管吗
  • 年度损益调整的会计分录
  • 其他权益工具确认递延所得税负债
  • 个税和社保基数不一致怎么办
  • 销售回款率怎么计算,麻烦知道的告诉我,11
  • 固定资产管理系统设置及业务处理
  • 企业材料物资的采购费用包括
  • 盈余公积的构成
  • 如何用u盘装系统win10
  • win10系统怎么做全盘镜像
  • mac截屏后的图片在哪里
  • windows无法运行
  • windowxp操作系统
  • win7开启远程设置
  • win10 mobile 1709
  • win10怎么升级到2020
  • win10查看电脑配置显卡
  • win10预览版桌面图标和任务栏不翼而飞怎么办?
  • linux012
  • cocos2dx 教程
  • css中文手册
  • python购物车100行代码
  • perl中的$_
  • unity 控件
  • jquery插件是干什么的
  • 广西2023新农合报销政策
  • 浙江发票查验不了什么原因
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设