【问题标题】:how to get the last 2nd element of a string in javascript如何在javascript中获取字符串的最后第二个元素
【发布时间】:2021-07-21 06:51:12
【问题描述】:

我来自python背景,不明白这一点,javascript中有没有办法获取字符串的最后第二个元素?

例如const name = "John"

我能找到的最接近的是name.slice(-2),但它返回两个字符,换句话说,包括最后一个字符,这不是我想要的。

【问题讨论】:

  • name.charAt(name.length-2)?
  • 遗憾的是,javascript 不支持像 python 那样的负索引。
  • @georg 这就是我的观点。谢谢

标签: javascript string slice


【解决方案1】:

JavaScript 中的字符串是数组。例如,您可以通过执行name[2] 来获取单词"John" 中的字母“h”。

在这种情况下,我们可以使用数组的.length 属性来获取该数组中元素的数量,然后减去 2 以获取其中倒数第二个元素。像这样:

let name = "John"
let secondLast = name[name.length - 2]

console.log(secondLast)

减去2,因为数组的长度是一个计数,从1开始,但是数组索引是从0开始。而且我们需要倒数第二个字母,而不是最后一个。

【讨论】:

    【解决方案2】:

    slice() 函数有两个参数,start 和 end。你也可以像数组一样索引它。

    所以你可以写:

    const name = "John"
    console.log(name.slice(-2,-1))
    
    console.log(name[name.length-2])

    【讨论】:

      【解决方案3】:

      JS 的slice 与 Python 的切片语法并不相似,尽管名称相似。带有单个参数的 JS 的 slice 总是从提供的数字到字符串或数组的末尾,除非您将停止索引指定为 好(包括,排他):

      const name = "John";
      
      console.log(name.slice(-2, -1));
      console.log(name[name.length-2]); // or use a normal index since you want 1 char

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-05-06
        • 1970-01-01
        • 1970-01-01
        • 2023-04-08
        • 1970-01-01
        • 2014-06-08
        • 1970-01-01
        相关资源
        最近更新 更多