位置: 编程技术 - 正文

深入浅析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方法不执行)

  • 公司食堂菜金会计分录
  • 车票抵扣进项税申报在哪一栏
  • 固定资产处置损益怎么算
  • 在途物资的运费放在哪个科目
  • 开票系统年费怎么缴纳
  • 购买金蝶软件计入什么费用
  • 一般纳税人增值税优惠政策
  • 销售库存商品计入什么科目
  • 收到政府划拨的固定资产会计处理
  • 出口退税进项发票稽核
  • 开出现金支票属于什么会计科目类别
  • 记账汇率是什么意思
  • 租车没有发票怎么入账
  • 事业单位过节发东西
  • 减免所得税额明细怎么填
  • 关于行邮税四档调三档
  • 建筑分包项目有哪些内容
  • 社会团体收取的会费是否缴纳增值税
  • 工会经费漏申报去大厅怎么处理
  • 软件行业研发费用比例有要求么
  • 增值税发票确认时间
  • 内部存货交易的抵消分录例题讲解
  • 员工离职一次性结清工资
  • macbookzen
  • 广告传媒公司的成本是什么
  • 发票填开的基本规定?
  • fssm32.exe是什么进程 有什么作用 fssm32进程查询
  • 公司logo设计费入什么科目
  • Symfony2 session用法实例分析
  • 公司需要购买物品
  • 解决科学文化领域的矛盾应坚持的方针是
  • 西班牙的藏红花好不好
  • 纳税人超过应缴纳税额缴纳的税款
  • 什么是民办非企业属于民营经济吗
  • php支付宝支付流程原理
  • 永磁同步电机基础理论pdf
  • 软件折旧费
  • urljoin使用
  • 哪些费用计入管理费用中
  • 预付卡销售和充值计入什么费用
  • 进项发票无法取消怎么办
  • 公司购买黄金计入什么科目
  • 分公司以总公司名义
  • 工程施工与工程结算对冲分录
  • 什么经营范围可以开劳务费
  • sql查看日志
  • sqlserver2005属于
  • 新政府会计制度下的基建会计
  • 给客户退款怎么说
  • 资产负债表是根据科目余额表填的吗
  • 运输公司内账会计每天需要做什么
  • 行政单位资产报告范文
  • 物流报关什么意思
  • 上一年度的费用怎么做会计分录
  • 以前年度损益调整账务处理分录
  • 固定资产暂估入账的税务处理
  • mysql中分组
  • phpmyadmin配置文件
  • sql server 操作
  • 文本效果设置在哪
  • ubuntu系统中文
  • mysql查看使用情况
  • windows任务管理器打不开
  • win 10预览版
  • xp电脑开机自检怎么取消
  • centos6启动服务的命令
  • 笔记本win7电源已接通未充电怎么办
  • 网页使用的字体中最具可读性.最易浏览的是
  • perl 时间转换
  • Unity3D游戏开发毕业论文
  • javascript几种类型
  • js中写for循环
  • js的定时器函数
  • android面试题网站
  • python的读取和写入
  • jabsorb笔记_几个小例子第1/2页
  • json遍历对象集合
  • 陕西省国家税务总局班子成员
  • 四川国税局普通发票查询?
  • 重庆国税电子税务登录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设