吐槽Javascript系列一:slice()、substr()和 substring()

栏目: JavaScript · 发布时间: 5年前

内容简介:实不相瞒,对于字符串中的slice()、substr()和 substring()这三个方法,我自己很长一段时间都是理不清的,每次用都得查一下文档,因为他们长得实在是太像了。我们先来温习一下,他们的特性如下:我们来看几个简单的例子:

实不相瞒,对于字符串中的slice()、substr()和 substring()这三个方法,我自己很长一段时间都是理不清的,每次用都得查一下文档,因为他们长得实在是太像了。

特性

我们先来温习一下,他们的特性如下:

  • 这三个方法都会 返回 被操作字符串的 一个子字符串 ,而且也都接受一或两个参数
  • 这三个方法都 不会改变 原字符串
  • 第一个参数指定子字符串的开始位置,第二个参数(在指定的情况下)表示子字符串到哪里结束。具体来说,slice()和substring()的第二个参数指定的是子字符串最后一个字符后面的位置,而substr()的第二个参数指定的则是返回的字符个数

我们来看几个简单的例子:

const str = 'hello world'
console.log(str.slice(3)) // lo world
console.log(str.substring(3)) // lo world
console.log(str.substr(3)) // lo world

console.log(str.slice(3, 7)) // lo w
console.log(str.substring(3, 7)) // lo w
console.log(str.substr(3, 7)) // lo worl

吐槽

substring():slice()同学,我们干的是一样的活,我感觉你有点多余,并且你的名字在数组的方法中也出现了,让人用起来晕晕的。

slice():我们在传入负值的时候,是不一样的。

console.log(str.slice(-3)) // rld
console.log(str.substring(-3)) // hello world

substring():谁没事传负值啊,你见过有人传入负值的吗?混乱!

slice():...


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C++编程风格

C++编程风格

卡吉尔 / 聂雪军 / 机械工业出版社发行室 / 2007-1 / 25.00元

本书描述C++语言中较深层次的程序设计思想和使用方法,包含大量软件工程概念和设计模式,重点介绍大规模编程相关的内容,例如增加代码的可读性、可维护性、可扩展性以及执行效率等的方法。本书的示例代码都是从实际程序中抽取出来的,融人了作者的实际开发经验。讲解如何正确地编写代码以及避开一些常见的误区和陷阱,并给出了许多实用的编程规则,可快速提升读者的C++编程功力。   本书描述平实,示例丰富,适合有......一起来看看 《C++编程风格》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器