Ich habe JSLint auf diesen JavaScript-Code angewendet und es sagte:
Problem in Zeile 32 Zeichen 30: Fehlender Radix-Parameter.
Dies ist der betreffende Code:
imageIndex = parseInt(id.substring(id.length - 1))-1;
Was ist hier falsch?
Ich habe JSLint auf diesen JavaScript-Code angewendet und es sagte:
Problem in Zeile 32 Zeichen 30: Fehlender Radix-Parameter.
Dies ist der betreffende Code:
imageIndex = parseInt(id.substring(id.length - 1))-1;
Was ist hier falsch?
Vor ECMAScript 5 erkannte parseInt() auch automatisch oktale Literale, was zu Problemen führte, da viele Entwickler davon ausgingen, dass eine führende 0 ignoriert würde.
Stattdessen:
var num = parseInt("071"); // 57
Tun Sie dies:
var num = parseInt("071", 10); // 71
var num = parseInt("071", 8);
var num = parseFloat(someValue);
Setzen Sie einfach eine leere Zeichenkette an die Radix-Stelle, da parseInt() zwei Argumente benötigt:
parseInt(string, radix);
Zeichenfolge Der zu parsende Wert. Wenn das String-Argument keine Zeichenkette ist, wird es in eine Zeichenkette umgewandelt (unter Verwendung der abstrakten Operation ToString). Führende Leerzeichen im String-Argument werden ignoriert.
radix Eine ganze Zahl zwischen 2 und 36, die das Radix (die Basis in mathematischen Zahlensystemen) der oben genannten Zeichenfolge darstellt. Geben Sie 10 für das von Menschen üblicherweise verwendete Dezimalsystem an. Geben Sie diesen Parameter immer an, um Verwirrung beim Leser zu vermeiden und ein vorhersehbares Verhalten zu gewährleisten. Verschiedene Implementierungen liefern unterschiedliche Ergebnisse, wenn kein Radix angegeben wird, und setzen den Wert normalerweise auf 10.
imageIndex = parseInt(id.substring(id.length - 1))
imageIndex = parseInt(id.substring(id.length - 1), '')-1;
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.