parseInt有两个参数,第二个是可选的。字符串和基数。
String是要解析的值。如果提供的值不是字符串,它会将其转换为字符串。
Radix是 2 到 36 之间的整数,表示上述字符串的基数(数学数字系统中的基数)。
在您的代码片段中,未指定 Radix,假定为默认 16。
var maxChars = parseInt( formField.attr('maxlength') ? formField.attr('maxlength') : counter.text() );
您正在定义一个名为“maxChars”的变量。此变量等于对简写 IF 语句的评估。
您正在从变量中获取属性,该变量应该是一个名为“maxLength”的选择器“formField”。该值将作为整数返回,它将回退到它的默认基数。
IF 语句检查返回值是真还是假。0,false,其他会导致变量“maxChars”的值被设置为“counters”组合文本。如果为真,它将导致变量被设置为选择器“formField”属性,称为“maxLength”。
formField.attr('maxlength')
是否存在两次,因为一个用于 IF 语句评估,另一个用作 IF 语句中的条件结果为 TRUE 的值。