parseInt dauert zwei Parameter, die zweite ist optional. Schnur und Radix.
Zeichenfolge ist der zu analysierende Wert. Wenn der angegebene Wert kein String ist, wird er in einen String umgewandelt.
Radix eine ganze Zahl zwischen 2 und 36 , der die Radix (die Basis in der mathematischen Zahlensysteme) der oben genannten Zeichenfolge darstellt.
In Ihrem Code-Snippet wird der Radix nicht angegeben ist und angenommen wird standardmäßig als "maxChars" 16.
var maxChars = parseInt(formField.attr('maxlength') ? formField.attr('maxlength') : counter.text());
Sie definieren eine Variable sein. Diese Variable ist gleichbedeutend mit der Auswertung einer IF-Anweisung für eine kurze Hand.
Sie erhalten das Attribut von der Variable, die erwartet wird, ein Selektor "FormField" namens "MaxLength" sein. Der Wert wird als Integer zurückgegeben, er wird auf seine Standard-Radix zurückgreifen.
Die IF-Anweisung prüft, ob der zurückgegebene Wert wahr oder falsch ist. 0, false, ectcetera würde dazu führen, dass der Wert der Variablen "maxChars" auf den kombinierten Text "counters" gesetzt wird. IF true würde dazu führen, dass die Variable als selector "formField" -Attribut namens "maxLength" gesetzt wird.
formField.attr('maxlength')
Gibt es zweimal, weil man in einer IF-Anweisung Auswertung verwendet wird, und die andere wird als der Wert, wenn die Bedingung in der IF-Anweisung Ergebnisse als TRUE verwendet.
Ist [das Handbuch] (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/parseInt) unklar? – Quentin
Dort ist _is no_ radix in diesem Beispiel angegeben ... Der gesamte Ausdruck in der 'parseInt() 'ist eine ternäre Anweisung, die die maxlength zurückgibt, wenn sie angegeben ist, oder' counter.text() ', wenn dies nicht der Fall ist. –
Am Ende ist alles, was Sie daraus bekommen, entweder 'parseInt (formField.attr (' maxlength ')) 'ODER' parseInt (counter.text()) ' –