789 Stimmen

Wie erhält man das letzte Zeichen einer Zeichenkette?

Wie man das letzte Zeichen der Zeichenkette erhält:

"linto.yahoo.com."

Das letzte Zeichen dieser Zeichenkette ist "."

Wie kann ich das finden?

5voto

Adam Punkte 41698

Verwenden Sie das JavaScript charAt Funktion, um ein Zeichen an einer bestimmten 0-indizierten Position zu erhalten. Verwenden Sie Länge um herauszufinden, wie lang der String ist. Sie wollen das letzte Zeichen, das ist also Länge - 1. Beispiel:

var word = "linto.yahoo.com.";
var last = word.charAt(word.length - 1);
alert('The last character is:' + last);

5voto

xlm Punkte 5604

Wenn Sie lodash haben oder bereits verwenden, verwenden Sie zuletzt stattdessen:

_.last(str);

Es ist nicht nur prägnanter und offensichtlicher als das Vanilla JS, es ist auch sicherer, da es die Uncaught TypeError: Cannot read property X of undefined wenn die Eingabe null o undefined Sie brauchen dies also nicht vorher zu prüfen:

// Will throws Uncaught TypeError if str is null or undefined
str.slice(-1); // 
str.charAt(str.length -1);

// Returns undefined when str is null or undefined
_.last(str);

2voto

Gauravsa Punkte 5797

Sie können die folgenden Möglichkeiten nutzen. In diesem Fall der letzten Zeichen ist es ein Overkill, aber für eine Teilzeichenkette, seine nützlich:

var word = "linto.yahoo.com.";
var last = ".com.";
if (word.substr(-(last.length)) == last)
alert("its a match");

0voto

shamant sai Punkte 1
var string = "Hello";
var fg = string.length;
fg = fg - 1;
alert(string[fg]);

-3voto

vdegenne Punkte 9972

Sie können diese einfache ES6-Methode verwenden

const lastChar = (str) => str.split('').reverse().join(',').replace(',', '')[str.length === str.length + 1 ? 1 : 0];

// example
console.log(lastChar("linto.yahoo.com."));

Dies funktioniert in allen Browsern.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X