首页 文章

如何使用JavaScript获取字符串的最后一个字符

提问于
浏览
589

我有

var id="ctl03_Tabs1";

使用JavaScript,我如何获得最后五个字符或最后一个字符?

14 回答

  • 0
    var id="ctl03_Tabs1";
    var res = id.charAt(id.length-1);
    

    我发现了这个问题,通过一些研究,我发现这是获得最后一个角色的最简单方法 .

    正如其他人提到并添加完整性以获得最后5个:

    var last5 = id.substr(-5);
    
  • 0

    您可以使用负起始位置的substr() method来检索最后n个字符 . 例如,这得到了最后5:

    var lastFiveChars = id.substr(-5);
    
  • 46

    我相信这会奏效....

    var string1="myfile.pdf"
    var esxtenion=string1.substr(string1.length-4)
    

    extension 的值为 ".pdf"

  • 0

    以下脚本显示使用JavaScript获取字符串中最后5个字符和最后1个字符的结果:

    var testword='ctl03_Tabs1';
    var last5=testword.substr(-5); //Get 5 characters
    var last1=testword.substr(-1); //Get 1 character
    

    输出:

    Tabs1 //有5个字符1 //有1个字符

  • 914

    这个将删除逗号,如果它是字符串中的最后一个字符..

    var str = $("#ControlId").val();
    
    if(str.substring(str.length-1)==',') {
    
      var stringWithoutLastComma = str.substring(0,str.length-1);    
    
    }
    
  • 7

    一种方法是使用 slice ,如下:

    var id="ctl03_Tabs1";
    var temp=id.slice(-5);
    

    所以 temp 的值是 "Tabs1" .

  • 21

    如果你只想要知道位置的最后一个字符或任何字符,你可以简单地将字符串作为一个数组来传递! - 字符串在javascript中是可以感知的 -

    Var x = "hello_world";
     x[0];                    //h
     x[x.length-1];   //d
    

    然而,如果您需要的不仅仅是一个字符,那么使用拼接是有效的

    x.slice(-5);      //world
    

    关于你的例子

    "rating_element-<?php echo $id?>"
    

    要提取ID,您可以轻松使用拆分弹出窗口

    Id= inputId.split('rating_element-')[1];
    

    这将返回id,如果'rating_element'之后没有id,则返回undefined :)

  • 0

    我实际上有以下问题,这是我如何通过上述答案的帮助解决它,但不同的方法提取id形成一个输入元素 .

    我附上了一份提交的输入

    id="rating_element-<?php echo $id?>"
    

    并且,当单击该按钮时,我想提取id(这是数字)或仅提取php ID ($id) .

    所以我在这做什么 .

    $('.rating').on('rating.change', function() {
                alert($(this).val());
               // console.log(this.id);
               var static_id_text=("rating_element-").length;       
               var product_id =  this.id.slice(static_id_text);       //get the length in order to deduct from the whole string    
              console.log(product_id );//outputs the last id appended
            });
    
  • 56

    没有必要使用 substr 方法来获取字符串的单个字符串!

    以Jamon Holmgren为例,我们可以改变substr方法并简单地指定数组位置:

    var id = "ctl03_Tabs1";
    var lastChar = id[id.length - 1]; // => "1"
    
  • 7

    假设您将子字符串与另一个字符串的结尾进行比较并将结果用作布尔值,您可以扩展String类来完成此操作:

    String.prototype.endsWith = function (substring) {
      if(substring.length > this.length) return false;
      return this.substr(this.length - substring.length) === substring;
    };
    

    允许您执行以下操作:

    var aSentenceToPonder = "This sentence ends with toad"; 
    var frogString = "frog";
    var toadString = "toad";
    aSentenceToPonder.endsWith(frogString) // false
    aSentenceToPonder.endsWith(toadString) // true
    
  • 0

    EDIT: As others have pointed out, use slice(-5) instead of substr. 但是,请参阅本答案底部的 .split().pop() 解决方案,了解另一种方法 .

    原始答案:

    您将要使用Javascript字符串方法 .substr().length 属性结合使用 .

    var id = "ctl03_Tabs1";
    var lastFive = id.substr(id.length - 5); // => "Tabs1"
    var lastChar = id.substr(id.length - 1); // => "1"
    

    这将获得从id.length - 5开始的字符,并且由于省略了.substr()的第二个参数,因此继续到字符串的末尾 .

    您也可以使用 .slice() 方法,正如其他人在下面指出的那样 .

    如果您只是想在下划线后找到字符,可以使用:

    var tabId = id.split("_").pop(); // => "Tabs1"
    

    这会将字符串拆分为下划线上的数组,然后“弹出”数组中的最后一个元素(这是您想要的字符串) .

  • 2

    看看substring function .

    要获得最后一个角色:

    id.substring(id.length - 1, id.length);
    
  • 688

    获取最后一个字符很简单,因为您可以将字符串视为数组:

    var lastChar = id[id.length - 1];
    

    要获取字符串的一部分,可以使用substr函数或substring函数:

    id.substr(id.length - 1); //get the last character
    id.substr(2);             //get the characters from the 3rd character on
    id.substr(2, 1);          //get the 3rd character
    id.substr(2, 2);          //get the 3rd and 4th characters
    

    substrsubstring 之间的区别在于如何处理第二个(可选)参数 . 在 substr 中,它是索引中的字符数(第一个参数) . 在 substring 中,它是字符切片应该结束的索引 .

  • 2

    不要使用 .substr() . 请改用 .slice() 方法,因为它与浏览器兼容(请参阅IE) .

    var id = "ctl03_Tabs1";
    id.slice(-5); //Outputs: Tabs1
    id.slice(-1); //Outputs: 1
    

    substr() with negative value not working in IE

相关问题