Javascript-Teilstring

Lesezeit: 2 Minuten

Benutzer-Avatar
akula1001

das Allerschlimmste! Der folgende Code gibt „llo“ anstelle des erwarteten „wo“ aus. Ich bekomme so überraschende Ergebnisse für ein paar andere Zahlen. was fehlt mir hier?

alert('helloworld'.substring(5, 2));

Du verwirrst substring() und substr(): substring() erwartet zwei Indizes und nicht Offset und Länge. In Ihrem Fall sind die Indizes 5 und 2, dh es werden die Zeichen 2..4 zurückgegeben, da der höhere Index ausgeschlossen wird.

  • Die zweite Antwort ist besser; es hat Beispiele

    – Nathan

    20. Juni 2020 um 18:36 Uhr

Sie haben drei Möglichkeiten in Javascript:

//slice
//syntax: string.slice(start [, stop])
"Good news, everyone!".slice(5,9); // extracts 'news'

//substring 
//syntax: string.substring(start [, stop])
"Good news, everyone!".substring(5,9); // extracts 'news'

//substr
//syntax: string.substr(start [, length])
"Good news, everyone!".substr(5,4); // extracts 'news'

Überprüf den substring Syntax:

Teilstring (von, bis)

aus Erforderlich. Der Index, wo die Extraktion gestartet werden soll. Das erste Zeichen ist bei Index 0

zu Optional. Der Index
wo die Extraktion gestoppt werden soll. Wenn es weggelassen wird, extrahiert es den Rest der Zeichenfolge

Ich gebe Ihnen zu, es ist ein bisschen seltsam. Wusste das selbst nicht.

Was Sie tun möchten, ist

alert('helloworld'.substring(5, 7));

alert('helloworld'.substring(5, 2));

Der obige Code ist falsch, weil der erste Wert der Startpunkt zum Endpunkt ist. ZB bewegen Sie sich von Zeichen 5, was ist o und gehen Sie zu Char 2, das ist die l so bekommen llo Sie haben ihm also gesagt, dass er rückwärts gehen soll.

Was du willst ist

alert('helloworld'.substring(5, 7));

Benutzer-Avatar
Alexandru Diakov

Siehe folgende Syntax:

str.substring(indexA, [indexB])

Wenn indexA > indexBdas substring() Die Funktion verhält sich so, als ob die Argumente umgekehrt wären.

Betrachten Sie die Dokumentation hier:
https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/substring

Benutzer-Avatar
HoldOffHunger

Das habe ich getan…

var stringValue="Welcome to India";

// if you want take get 'India' 
// stringValue.substring(startIndex, EndIndex)
   stringValue.substring(11, 16); // O/p 'India'

1101750cookie-checkJavascript-Teilstring

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy