JavaScript字符串截取

JavaScript字符串截取一、常用方法说明1.substr2.substring3.slice二、举例说明1.substr2.substring3.slice

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

substr

概述
  substr() 方法返回字符串中从指定位置开始的指定数量的字符。

语法

String str.substr(start[, length]);

参数

start
开始提取字符的位置。如果为负值,则被看作 strLength+start,其中 strLength 为字符串的长度(例如,如果 start 为 -3,则被看作 strLength-3)。

length
提取的字符数。

描述

start 是一个字符的索引。首字符的索引为 0,最后一个字符的索引为 字符串的长度减去1。substr 从 start 位置开始提取字符,提取 length 个字符(或直到字符串的末尾)。

如果 start 为正值,且大于或等于字符串的长度,则 substr 返回一个空字符串。

如果 start 为负值,则 substr 把它作为从字符串末尾开始的一个字符索引。如果 start 为负值且 abs(start) 大于字符串的长度,则 substr 使用 0 作为开始提取的索引。注意负的 start 参数不被 Microsoft JScript 所支持。

如果 length 为 0 或负值,则 substr 返回一个空字符串。如果忽略 length,则 substr 提取字符,直到字符串末尾。

案例

var str = "abcdefghij";

console.log("(1,2): "    + str.substr(1,2));   // (1,2): bc
console.log("(-3,2): "   + str.substr(-3,2));  // (-3,2): hi
console.log("(-3): "     + str.substr(-3));    // (-3): hij
console.log("(1): "      + str.substr(1));     // (1): bcdefghij
console.log("(-20, 2): " + str.substr(-20,2)); // (-20, 2): ab
console.log("(20, 2): "  + str.substr(20,2));  // (20, 2):

substring

概述
  substring() 返回字符串两个索引之间(或到字符串末尾)的子串。

语法

String str.substring(indexA[, indexB]);

参数

indexA
一个 0 到字符串长度之间的整数。

indexB
(optional) 一个 0 到字符串长度之间的整数。

描述

substring 提取从 indexA 到 indexB(不包括)之间的字符。特别地:

  • 如果 indexA 等于 indexB,substring 返回一个空字符串。
  • 如果省略 indexB,substring 提取字符一直到字符串末尾。
  • 如果任一参数小于 0 或为 NaN,则被当作 0。
  • 如果任一参数大于 stringName.length,则被当作 stringName.length。
  • 如果 indexA 大于 indexB,则 substring 的执行效果就像两个参数调换了一样。例如,str.substring(1, 0) == str.substring(0, 1)。

案例

// 假设 print 函数已被定义
var anyString = "Mozilla";

// 输出 "Moz"
console.log(anyString.substring(0,3));
console.log(anyString.substring(3,0));

// 输出 "lla"
console.log(anyString.substring(4,7));
console.log(anyString.substring(7,4));

// 输出 "Mozill"
console.log(anyString.substring(0,6));

// 输出 "Mozilla"
console.log(anyString.substring(0,7));
console.log(anyString.substring(0,10));

slice

概述
   slice()方法提取字符串中的一部分,并返回这个新的字符串。

语法

String str.slice(beginSlice[, endSlice]);

参数

beginSlice
从该索引(以 0 为基数)处开始提取原字符串中的字符。如果该参数为负数,则它表示从原字符串中的倒数第几个字符开始抽取, slice(-2)表示抽取了原字符串中的倒数第二个字符到最后一个字符(包含最后一个字符)。

endSlice
在该索引(以 0 为基数)处结束提取字符串。如果省略该参数,slice会一直提取到字符串末尾。如果该参数为负数,则它表示在原字符串中的倒数第几个字符结束抽取.。slice(-2, -1) 表示抽取了原字符串中的倒数第二个字符到最后一个字符(不包含最后一个字符,也就是只有倒数第二个字符)。

描述

slice 不修改原字符串,只会返回一个包含了原字符串中部分字符的新字符串。

slice(1,4) 提取了原字符串中的第二个字符开始直到第四个字符的所有字符 (索引为 1, 2, 3的字符)。

str.slice(2, -1) 提取第三个字符到倒数第二个字符。

案例

var str1 = 'The morning is upon us.';
var str2 = str1.slice(4, -2);
console.log(str2); // OUTPUT: morning is upon u

var str = 'The morning is upon us.';
str.slice(-3);     // returns 'us.'
str.slice(-3, -1); // returns 'us'
str.slice(0, -1);  // returns 'The morning is upon us'
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/130844.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • centos7怎么关机_centos7重启后网卡关闭

    centos7怎么关机_centos7重启后网卡关闭开启NetworkManagercat<<EOF>/etc/NetworkManager/nm-system-settings.conf[main]plugins=ifupdown,keyfile[ifupdown]managed=trueEOFreboot关闭NetworkManagersystemctlstopNetworkManagersystemctldisableNetworkManagerrm-rf/var/lib/N…

  • AVR单片机最小系统 基本硬件线路与分析[通俗易懂]

    AVR单片机最小系统 基本硬件线路与分析[通俗易懂]单片机最小系统单片机最小系统设计AVR基本硬件线路设计与分析(ATmega16功能小板)AVRDB-COREVer2.3Atmega16开发板本站商城提供本最小系统销售:99元AVR

  • 阿里云文件存储NAS简介及应用场景

    阿里云文件存储NAS简介及应用场景

  • 逆向分析学习入门教程

    逆向分析学习入门教程转在于逆向工厂(一):从helloworld开始前沿从本篇起,逆向工厂带大家从程序起源讲起,领略计算机程序逆向技术,了解程序的运行机制,逆向通用技术手段和软件保护技术,更加深入地去探索逆向的魅力。一、程序如何诞生?1951年4月开始在英国牛津郡哈维尔原子能研究基地正式投入使用的英国数字计算机“哈维尔·德卡特伦”,是当时世界上仅有的十几台电脑之一。图中两人手持的“纸带”即是早期的程序,纸带通过是否

  • 手游市场数据分析_梦幻西游手游考古3进4

    手游市场数据分析_梦幻西游手游考古3进4“机”不离手是大多数人的生活状态,甚至有一个用手机形容真爱的段子:“在一起时不看手机,不在一起时秒回信息,就算现代人的真爱了。”随着手机在日常生活中地位的提升,手机游戏也逐渐成为年轻人日常生活不可或缺的一部分。 在7月31日的网易云创大会游戏论坛上,来自TalkingData华南区业务负责人黎丽华给大家带来了“透过数据看真相:手游市场趋势报告”的主题分享。通过一些鲜活的数据向大家展示了…

    2022年10月30日
  • hdfs命令大全_hdfs创建文件夹命令

    hdfs命令大全_hdfs创建文件夹命令hdfs常用命令:第一部分:hdfs文件系统命令第一类:文件路径增删改查系列:hdfsdfs-mkdirdir创建文件夹hdfsdfs-rmrdir删除文件夹dirhdfsdfs-ls查看目录文件信息hdfsdfs-lsr递归查看文件目录信息hdfsdfs-statpath返回指定路径的信息第二类:空间大小查看系列命令:hdfsdfs-du-h…

发表回复

您的电子邮箱地址不会被公开。

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