Was hinter String-Vergleich in javascript der Algorithmus arbeiten, zum BeispielWie funktioniert der Stringvergleich in JavaScript?
'bc' > 'ac' = true/false ?
'ac' > 'bc' = true/false ?
Was hinter String-Vergleich in javascript der Algorithmus arbeiten, zum BeispielWie funktioniert der Stringvergleich in JavaScript?
'bc' > 'ac' = true/false ?
'ac' > 'bc' = true/false ?
Dieser berechnet wird The Abstract Relational Comparison Algorithm in ECMA-5 sehen. Der relevante Teil ist unten zitiert.
4. Else, both px and py are Strings
a) If py is a prefix of px, return false. (A String value p is a prefix
of String value q if q can be the result of concatenating p and some
other String r. Note that any String is a prefix of itself, because
r may be the empty String.)
b) If px is a prefix of py, return true.
c) Let k be the smallest nonnegative integer such that the character
at position k within px is different from the character at position
k within py. (There must be such a k, for neither String is a prefix
of the other.)
d) Let m be the integer that is the code unit value for the character
at position k within px.
e) Let n be the integer that is the code unit value for the character
at position k within py.
f) If m < n, return true. Otherwise, return false.
Strings Zeichen für Zeichen verglichen werden, so ist der erste Buchstabe der bedeutendste, daher
'bc' > 'ac' = true/false ? => true
'ac' > 'bc' = true/false ? => false
wenn der erste Buchstabe wird gleich sein, wird der zweite verglichen und so weiter, bis einer von ihnen größer oder kleiner oder gleich wird.
Javascript konvertiert das Alphabet in ASCII-Code und vergleicht das erste Zeichen zuerst.
können Sie ascii-Code-Tabelle hier http://www.kerryr.net/pioneers/ascii2.htm
aus Ihrer Frage
'bc' > 'ac' // because b > a
ASCII ist Unicode? Nein. Wir sind gerade Jahrzehnte in die Zukunft gegangen! – Sebivor
Nicht nur in Javascript, Vereinfacht, all String-Vergleich Algorithmus die lexikographische Reihenfolge oder lexikalische Reihenfolge, folgen, was bedeutet es jedes Zeichen für Zeichen wird prüfen, ob einige Fehlpaarungen, können Sie das Ergebnis entscheiden
True:
ant < any
aaa < aab
aab < b
b < baa
Strings werden alphabetisch verglichen. 'b' ist größer als' a' usw. –
was ist mit é und e? –