首页 > 其他分享 >js substr 与 substring 有什么区别吗

js substr 与 substring 有什么区别吗

时间:2024-04-20 15:11:20浏览次数:24  
标签:负数 substring substr 参数 str 字符串 js

在 JavaScript 中,substrsubstring 是用于提取字符串的两个方法,它们的功能类似,但有一些区别:

1. substr(start, length) 方法:

  • 参数

    • start:必需。要提取的子字符串的起始位置。如果为负数,表示从字符串末尾开始计数。
    • length:可选。要提取的字符数。如果省略或为负数,则提取到字符串的末尾。
  • 返回值

    • 返回从指定位置开始的指定长度的子字符串。
  • 示例

    javascriptCopy Code
    var str = "Hello, world!";
    console.log(str.substr(1, 4)); // 输出 "ello"
    console.log(str.substr(-6));    // 输出 "world!"

2. substring(start, end) 方法:

  • 参数

    • start:必需。要提取的子字符串的起始位置。如果为负数,会被当作 0。
    • end:可选。要提取的子字符串的结束位置(不包括该位置的字符)。如果省略或为负数,会被当作字符串的长度。
  • 返回值

    • 返回位于两个指定下标之间的子字符串。
  • 示例

    javascriptCopy Code
    var str = "Hello, world!";
    console.log(str.substring(1, 4)); // 输出 "ell"
    console.log(str.substring(4));    // 输出 "o, world!"

区别总结:

  • substr 的第二个参数是要提取的字符数,而 substring 的第二个参数是要提取的子字符串的结束位置。
  • substr 允许第一个参数为负数,表示从字符串末尾开始计数;而 substring 不允许负数参数,会被当作 0。
  • 当 start 参数大于 end 参数时,substr 会将它们交换,而 substring 会将负数参数视为 0。

标签:负数,substring,substr,参数,str,字符串,js
From: https://www.cnblogs.com/chxl800/p/18147717

相关文章

  • 原生js图片截取并渲染页面
    一、将海报大图截屏部分图片并渲染页面二、实现代码如下<!DOCTYPEhtml><htmllang="zh"> <head> <metacharset="UTF-8"> <metaname="viewport"content="width=device-width,initial-scale=1.0"> <title>Do......
  • js 小写转换,取后缀
    varstrfileExt=tmpFinanceReportFileName.substr(tmpFinanceReportFileName.lastIndexOf(".")).toLowerCase();    if(strfileExt!==".xls"&&strfileExt!=".xlsx"){      alertMsg.error('文件格式只能为Excel文件!&#......
  • nestjs 中管道的使用-验证DTO
    1.安装管道nestgpirole意思是安装一个role模块的管道2.在controller中使用管道 管道的作用:1.数据的转换2.DTO规则验证 一般使用全局配置管道 区别:自己写:需要一个个的带入 ......
  • js逆向中的坑和经验记录
    window,document变量,执行deletewindow。在浏览器中是无效的。在自己抠出来的js代码中是有效的。这会导致一些问题js中如下一段代码window["sign"]=functionsign(){try{div=document["createElement"];returnDate["parse"](newDate())["toStri......
  • 模块介绍,包,json模块
    【一】模块1.什么是模块模块就是一系列功能的结合体,可以直接使用2.为什么要模块极大地提升开发效率3.模块的三种来源【1】内置模块无需下载,解释器自带,直接导入使用即可【2】自定义模块自己写的代码,封装成模块,自己用或者是发布到网上供别人使用【3】第三方模块别人写的......
  • 如何评价 Next.js?
    作者:你不知道我是谁链接:https://www.zhihu.com/question/52365623/answer/2814907079来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。16年的问题了,在6年后的平安夜刷到了。Next.js,是第二个让我由心觉得好用,觉得「我艹,可以啊」的一个框架。第一个......
  • 网页幻灯片演示框架:Reveal.js
    网页幻灯片演示框架:Reveal.js谢小飞​北京京东方能源科技有限公司前端开发工程师已关注 63人赞同了该文章在生活和工作中,我们经常需要用到幻灯片进行演示或者汇报工作等,传统的幻灯片在排版、代码、动效和多媒体等方面操作起来需要一定的基础;......
  • 2024-04-19 前端常见面试题汇总(js篇)
    以下是前端面试中关于JavaScript的一些常见问题及其答案,共包含超过50个问题:1.解释一下JavaScript中的变量提升(Hoisting)。变量提升是指在JavaScript中,变量和函数的声明会被提升到其所在作用域的最顶部。但需要注意,只有声明会被提升,赋值操作不会。2.解释一下JavaScript中的闭包(C......
  • 数仓的两种轻量级数据交换格式:json与jsonb
    本文分享自华为云社区《GaussDB(DWS)——探究JSON,JSONB》,作者:yd_283975606。1.前言适用版本:【8.1.1(及以上)】JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式,常用于将数据从服务器发送到Web应用程序。它采用人类易读和机器易解析的文本格式,基于键值对的集合,用于......
  • jspdf 打印成pdf后模糊不清晰
    constpdfDPI=300;importhtml2canvasfrom'html2canvas'//设置截图的分辨率(单位为dpi)constdpi=300;html2canvas(document.querySelector('#app'),{dpi:dpi,//设置截图的分辨率scale:dpi/96,//设置截图缩放比例,以适应pdf的dpi}).then(canvas=>......