JavaScript如何截取指定位置的字符串

JavaScript如何截取指定位置的字符串我们在日常开发中,经常需要对字符串进行删除截取增加的操作,我们这次说一下使用JavaScript截取指定位置的字符串。**一、使用slice()截取**slice()方法可以通过指定的开始和结束位置,提取字符串的某个部分,并以新的字符串返回被提取的部分。它的参数有两个,start和end。start是必须填写的参数,规定从何处开始选取,如果是负数,就是从尾部倒着开始算。end是可选填写的参数,规定从何处结束选择,如果没有指定end的值的话,只有start,那么就是默认从start一直截取到结束的

大家好,又见面了,我是你们的朋友全栈君。

我们在日常开发中,经常需要对字符串进行删除截取增加的操作,我们这次说一下使用JavaScript截取指定位置的字符串。
**

一、使用slice()截取

**
slice()方法可以通过指定的开始和结束位置,提取字符串的某个部分,并以新的字符串返回被提取的部分。它的参数有两个,start和end。
start是必须填写的参数,规定从何处开始选取,如果是负数,就是从尾部倒着开始算。
end是可选填写的参数,规定从何处结束选择,如果没有指定end的值的话,只有start,那么就是默认从start一直截取到结束的所有字符,如果end的值是负数,也是从尾部倒着开始算。
以下是代码示例及输出结果:

var str = 'abcd9999';
var newStr = str.slice(2);
console.log(newStr); // 输出 cd9999;
newStr = str.slice(-2);
console.log(newStr); // 输出 99;
newStr = str.slice(2,4);
console.log(newStr); // 输出 cd;
newStr = str.slice(2,-2);
console.log(newStr); // 输出 cd99;

二、使用substring()截取

substring()方法用于提取字符串中介于两个指定下标之间的字符。
它有两个参数,start和stop。
start是必须填写的参数,并且start不能为负,这是和slice()方法不同的地方。
stop是可选填写的参数,并且stop也不能为负。
该函数返回一个新字符串,该字符串是一个子字符串,其内容是start处到stop-1处的所有字符,其长度为stop减start。
以下是代码示例及输出结果:

var str = 'Hello Word!';
var newStr = str.substring(2);
console.log(newStr); // 输出 llo Word!
newStr = str.substring(2,8);
console.log(newStr); // 输出 llo Wo

三、使用substr()截取
substr方法用于返回一个从指定位置开始的指定长度的子字符串。
它也有两个参数,start和length。
start是必须填写的参数,它是指定所需的字符串的起始位置,可以是负数,负数效果同上面两个方法。
length是可选填写的参数,它是指定在返回的字符串中包括的字符个数,不可为负数。
以下是代码示例及输出结果:

var str = 'JavaScript';
			var newStr = str.substr(4);
			console.log(newStr); // 输出 Script
			newStr = str.substr(4,3);
			console.log(newStr); // 输出 Scr

介绍了三种使用JavaScript截取指定位置的字符串的方法,大家可以根据实际需求,自由使用。
有什么问题,可以联系QQ:505417246
关注下面微信公众号,可以领取微信小程序、Vue、TypeScript、前端、uni-app、全栈、Nodejs等实战学习资料
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/144066.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • js算法初窥01(排序算法01-冒泡、选择、插入)

    排序,我想大家一定经历过或者正在经历着。或许你不懂算法,对排序算法一无所知,但是你一定用过一些第三方库的api来一键排序,那么,在你享受便捷的同时,你是否想过它的底层是如何实现的?这样的算法实现方式是

    2022年3月25日
    34
  • Java学习之final与匿名内部类篇

    Java学习之final与匿名内部类0x00前言续上几篇文章,得知子类继承父类后是可以在父类的基础上进行改写的,那么在程序中有些东西可能是不能让我们给轻易给改动的,那么Java给提供了final

    2021年12月11日
    57
  • Unity 协程(Coroutine)原理与用法详解「建议收藏」

    Unity 协程(Coroutine)原理与用法详解「建议收藏」前言:协程在Unity中是一个很重要的概念,我们知道,在使用Unity进行游戏开发时,一般不考虑多线程,那么如果处理一些并发的需求呢,Unity给我们提供了协程这种方式为啥在Unity中不考虑多线程因为在Unity中,只能在主线程中获取物体的组件、方法关于协程1,什么是协程协程,从字面意义上理解就是协助程序的意思,我们在主任务进行的同时,需要一些分支任务配合工作来达到最终的效果,这就是协程的概念:举个例子,在场景加载的时候,如果你的场景很复杂,那么加载过程就有可能使得画面卡顿,我们不

    2022年6月15日
    100
  • macbookpro安装anaconda_mac下python编程软件

    macbookpro安装anaconda_mac下python编程软件参考:https://www.cnblogs.com/xrblog/p/11839393.html安装Anaconda从官网下载,这里选择的是Python3.7版本的图形化安装包 安装后,在命令行中输入conda–version,如果安装成功,会显示版本号 但我并没有显示,所以根据Anaconda之Python环境配置(Mac版)配置了环境变量: 首先,找到Anaconda的安装路径下bin文件的位置,我的路径是/opt/anaconda3/bin (再记录一下,

    2022年8月29日
    3
  • cglib动态代理实现原理_动态代理的两种方式

    cglib动态代理实现原理_动态代理的两种方式CGLib动态代理原理CGLib动态代理是代理类去继承目标类,然后重写其中目标类的方法啊,这样也可以保证代理类拥有目标类的同名方法;看一下CGLib的基本结构,下图所示,代理类去继承目标类,每次调用代理类的方法都会被方法拦截器拦截,在拦截器中才是调用目标类的该方法的逻辑,结构还是一目了然的;1.CGLib的基本使用使用一下CGLib,在JDK动态代理中提供一个Proxy类来创建代理类,而在CGLib动态代理中也提供了一个类似的类Enhancer;使用的CGLib版本是2.2.2,我是随便找的,不

    2022年8月30日
    1
  • 智能点餐系统开发纪实2—–系统整体结构和业务流程「建议收藏」

    1请看这里http://blog.csdn.net/jason0539/article/details/20854329 写完之前这个就没写,趁着新鲜感几天就把这个弄完了,也没再写别的东西,前几天已经完成了,今天需要写一个文档,写完文档就把里面我写的部分贴到这里来了,有点罗嗦,凑字数。其实就是讲了一个整体流程,整个系统主要分四部分:小车,手机,收银台,厨房。服务器写了两个,收银

    2022年3月11日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号