parseInt mất hai tham số, tùy chọn thứ hai là tùy chọn. Chuỗi và Radix.
Chuỗi là giá trị để phân tích cú pháp. Nếu giá trị được cung cấp không phải là một chuỗi, nó sẽ chuyển đổi nó thành một chuỗi.
Radix là một số nguyên giữa 2 và 36 đại diện cho radix (cơ sở trong hệ thống chữ số toán học) của chuỗi nêu trên.
Trong đoạn mã của bạn Radix không được chỉ định và được giả định là mặc định 16.
var maxChars = parseInt(formField.attr('maxlength') ? formField.attr('maxlength') : counter.text());
Bạn đang xác định một biến gọi là "maxChars". Biến này bằng với việc đánh giá câu lệnh IF ngắn tay.
Bạn đang nhận thuộc tính từ biến được dự kiến là bộ chọn "formField" được gọi là "maxLength". Giá trị sẽ trở lại dưới dạng số nguyên, nó sẽ dự phòng trên cơ số mặc định của nó.
Câu lệnh IF sẽ kiểm tra nếu giá trị trả về là đúng hay sai. 0, false, ectcetera sẽ dẫn đến giá trị của biến "maxChars" được đặt thành văn bản kết hợp "counters". Nếu đúng, nó sẽ dẫn đến biến được đặt làm thuộc tính selector "formField" được gọi là "maxLength".
formField.attr('maxlength')
Có hai lần vì một được sử dụng trong đánh giá câu lệnh IF và giá trị kia được sử dụng làm giá trị nếu điều kiện trong câu lệnh IF là TRUE.
Nguồn
2015-08-02 18:09:30
[sách hướng dẫn] (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/parseInt) chưa rõ ràng? – Quentin
There _is no_ radix được chỉ định trong ví dụ này ... Toàn bộ biểu thức bên trong 'parseInt()' là một câu lệnh ternary trả về maxlength nếu nó được chỉ định hoặc 'counter.text()' nếu nó không phải là. –
Cuối cùng, tất cả những gì bạn nhận được từ điều này là 'parseInt (formField.attr ('maxlength'))' OR 'parseInt (counter.text())' –