javascript substr和substring用法比较

yizhihongxing

JavaScript 中的 substr()substring() 都用于从字符串中提取子字符串。它们之间的区别在于如何指定提取子字符串的开始位置和结束位置。

substr() 方法

substr() 方法接受两个参数,第一个参数是开始提取子字符串的位置,第二个参数是提取子字符串的长度。例如:

let str = "hello world";
let result = str.substr(1, 4); // 从第二个字符开始,提取四个字符,结果为 "ello"

注意,第一个参数是子字符串的开始位置,而不是它的结束位置。如果第一个参数是负数,则表示从字符串末尾开始计数。例如:

let str = "hello world";
let result = str.substr(-3); // 从倒数第三个字符开始,直到字符串末尾,结果为 "rld"

substring() 方法

substring() 方法接受两个参数,第一个参数是子字符串的开始位置,第二个参数是子字符串的结束位置(不包含该位置的字符)。例如:

let str = "hello world";
let result = str.substring(1, 5); // 从第二个字符开始,到第五个字符之前,结果为 "ello"

注意,第一个参数必须小于第二个参数。如果参数中有负数,则会被视为 0。例如:

let str = "hello world";
let result = str.substring(-3, 4); // 等同于 str.substring(0, 4),结果为 "hell"

substr()substring() 的比较

  1. substr() 的第二个参数是子字符串的长度,而 substring() 的第二个参数是子字符串的结束位置。这意味着,substr() 可以使用负数表示从结尾开始数的位置,而 substring() 不行。

  2. 当第一个参数是相同的正数时,substr()substring() 的结果是一样的。例如:

let str = "hello world";
let result1 = str.substr(1, 4); // "ello"
let result2 = str.substring(1, 5); // "ello"

然而,当第一个参数是负数时,它们的结果是不同的。因为 substring() 将负数参数转换为 0,而 substr() 将负数参数解释为从结尾开始数的位置。例如:

let str = "hello world";
let result1 = str.substr(-3); // "rld"
let result2 = str.substring(-3); // "hello world"

因此,当需要从结尾开始提取子字符串时,应该使用 substr()

总之, substr()substring() 虽然有相似的功能,但它们的参数表达方式不同,需要根据具体情况谨慎使用。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript substr和substring用法比较 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • js内置对象处理_打印学生成绩单的简单实现

    下面将详细讲解“js内置对象处理_打印学生成绩单的简单实现”的完整攻略。 前置知识 在学习这个问题之前,你需要了解以下知识: JavaScript对象和数组的基础概念 for循环和while循环的基础使用方式 键值对的概念 代码的排版和注释 控制台输出console.log()的使用方法 如果你对以上概念不熟悉,建议先学习相关的基础教程。 问题描述 在这个问…

    JavaScript 2023年5月28日
    00
  • Javascript前端优化代码

    Javascript前端优化代码是一个很重要的主题,本文将介绍Javascript前端代码优化的完整攻略,包括如何减少HTTP请求,如何优化代码结构以便缩小文件体积,以及如何异步加载Javascript代码等技巧。 一、减少HTTP请求 减少HTTP请求是提高网站性能的一个关键因素。每个HTTP请求都消耗资源,减少HTTP请求可提高页面加载速度。下面是一些减…

    JavaScript 2023年5月28日
    00
  • 用js编写的简单的计算器代码程序

    为了编写一个简单的计算器程序,我们可采用HTML、CSS、JavaScript等技术。下面将分步骤讲解如何制作一个基于JS编写的简易计算器程序。 步骤一:创建基本的HTML代码 我们需要创建一个空白的HTML文件,并添加必要的元素,例如标题,文本输入框和按钮。通过以下HTML代码可以实现: <!DOCTYPE html> <html>…

    JavaScript 2023年5月27日
    00
  • firefox firebug中文入门教程 脚本之家新年特别版

    Firefox Firebug中文入门教程 脚本之家新年特别版 本文主要介绍如何使用Firefox浏览器中自带的调试工具Firebug进行前端开发调试。Firebug具有强大的功能,包括HTML、CSS、JavaScript调试和分析等,非常适合前端开发者使用。 安装Firebug 首先,我们需要在Firefox浏览器中安装Firebug插件。在Firefo…

    JavaScript 2023年6月10日
    00
  • 深入理解Javascript中this的作用域

    下面是针对“深入理解Javascript中this的作用域”的完整攻略: 1. this的基本概念 在 JavaScript 中,this 代表函数运行时的上下文环境,指向的是当前函数执行的对象。也就是说,this 的值是根据函数的调用方式而定的,有以下几种: 函数作为独立的函数调用时,this 指向全局对象,也就是 window(浏览器环境)或 globa…

    JavaScript 2023年6月10日
    00
  • 如何在WebForm中使用javascript防止连打(双击)

    下面是如何在WebForm中使用javascript防止连打(双击)的攻略。 1. 使用Javascript实现防止连打的原理 当用户在WebForm页面中连续点击同一个按钮时,可能会产生多次请求与处理,导致数据混乱,甚至出现系统异常等问题。使用Javascript可以有效防止这种情况的发生。 实现原理是通过给按钮添加一个onclick事件,在该事件里面添加…

    JavaScript 2023年6月11日
    00
  • 详解JavaScript匿名函数和闭包

    详解JavaScript匿名函数和闭包 JavaScript匿名函数和闭包在程序员开发中经常用到,本文将对它们进行详细的介绍,并提供两个示例,以便读者更好地理解。 什么是匿名函数? 在JavaScript中,函数可以具有名称和匿名两种形式。没有名称的函数称为匿名函数。匿名函数不需要用函数名调用,可以通过函数变量调用。 匿名函数的语法如下: var x = f…

    JavaScript 2023年6月10日
    00
  • JavaScript实现简单购物小表格

    下面是“JavaScript实现简单购物小表格”的完整攻略: 1.准备工作 在HTML中,首先要准备一个表格元素,代码如下: <table> <thead> <tr> <th>商品</th> <th>价格</th> <th>数量</th> <th…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部