Hướng dẫn how do you check if an argument is a number javascript? - làm thế nào để bạn kiểm tra xem một đối số có phải là một javascript số không?

Tôi đang thực hiện một số cảnh quay rắc rối và muốn thêm kiểm tra xem tham số vào hàm là một số. Làm thế nào để tôi làm điều này?

Một cái gì đó như thế này ...

function fn(id) {
    return // true iff id is a number else false
}

Thậm chí tốt hơn là nếu tôi có thể kiểm tra xem tham số là một số và số nguyên hợp lệ.

Đã hỏi ngày 22 tháng 6 năm 2011 lúc 14:41Jun 22, 2011 at 14:41

Hướng dẫn how do you check if an argument is a number javascript? - làm thế nào để bạn kiểm tra xem một đối số có phải là một javascript số không?

Steve McLeodsteve McLeodSteve McLeod

51.1K46 Huy hiệu vàng123 Huy hiệu bạc181 Huy hiệu Đồng46 gold badges123 silver badges181 bronze badges

1

function fn(id) {
    return typeof(id) === 'number';
}

Để kiểm tra xem nó có phải là một số nguyên không:

function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}

Đã trả lời ngày 22 tháng 6 năm 2011 lúc 14:43Jun 22, 2011 at 14:43

Daniel Cassidydaniel CassidyDaniel Cassidy

Huy hiệu vàng 24K541 Huy hiệu bạc53 Huy hiệu đồng5 gold badges41 silver badges53 bronze badges

0

tôi sẽ nói

 n === parseInt(n)

Là đủ. Lưu ý ba '===' - Nó kiểm tra cả loại và giá trị

Đã trả lời ngày 22 tháng 6 năm 2011 lúc 15:16Jun 22, 2011 at 15:16

user187291user187291user187291

52,8K19 Huy hiệu vàng94 Huy hiệu bạc127 Huy hiệu đồng19 gold badges94 silver badges127 bronze badges

1

Kiểm tra xem loại là số và liệu đó có phải là INT sử dụng

function fn(id) {
    return typeof(id) === 'number';
}
3:

function fn(id) {
    return typeof(id) === 'number';
}
4

Đã trả lời ngày 22 tháng 6 năm 2011 lúc 14:43Jun 22, 2011 at 14:43

Daniel Cassidydaniel Cassidy

Huy hiệu vàng 24K541 Huy hiệu bạc53 Huy hiệu đồng

var intRegex = /^\d+$/;
if(intRegex.test(num1)) { 
//num1 is a valid integer
}

tôi sẽ nói == vs. ===

Là đủ. Lưu ý ba '===' - Nó kiểm tra cả loại và giá trịNov 19, 2012 at 7:01

Đã trả lời ngày 22 tháng 6 năm 2011 lúc 15:16GaurabDahal

52,8K19 Huy hiệu vàng94 Huy hiệu bạc127 Huy hiệu đồng6 silver badges16 bronze badges

function fn(id){ 
  if((parseFloat(id) == parseInt(id)) && !isNaN(id)){
      return true;
  } else { 
      return false;
  } 
}

Kiểm tra xem loại là số và liệu đó có phải là INT sử dụng

function fn(id) {
    return typeof(id) === 'number';
}
3:Jun 22, 2011 at 14:44

=== có nghĩa là hoàn toàn bằng và == Kiểm tra xem các giá trị có bằng nhau không. Điều đó có nghĩa là "2" == 2 là đúng nhưng "2" === 2 là sai.thescientist

Sử dụng biểu thức chính quy1 gold badge19 silver badges15 bronze badges

function fn(id) {
    var x = /^(\+|-)?\d+$/;
    if (x.test(id)) {
        //integer
        return true;
    }
    else {
        //not an integer
        return false;
    }
}

Ví dụ về == so với ===

Đã trả lời ngày 19 tháng 11 năm 2012 lúc 7:01Jun 22, 2011 at 14:54

Hướng dẫn how do you check if an argument is a number javascript? - làm thế nào để bạn kiểm tra xem một đối số có phải là một javascript số không?

Gaurabdahalgaurabdahalkei

8666 Huy hiệu bạc16 Huy hiệu Đồng2 gold badges34 silver badges61 bronze badges

0

Hướng dẫn how do you check if an argument is a number javascript? - làm thế nào để bạn kiểm tra xem một đối số có phải là một javascript số không?

Tôi đã xây dựng một hình thức vào một ngày khác trong VUE và tôi phải viết xác thực số cho trường nên phải viết logic để kiểm tra xem giá trị đầu vào có phải là số hay không. Tôi muốn liệt kê một vài cách tôi học được có thể hữu ích cho người khác.

Lưu ý: Trong JavaScript, các giá trị đặc biệt như

function fn(id) {
    return typeof(id) === 'number';
}
5,
function fn(id) {
    return typeof(id) === 'number';
}
6 và
function fn(id) {
    return typeof(id) === 'number';
}
7 cũng là số - mặc dù, chúng tôi sẽ bỏ qua các giá trị đó.
In JavaScript, special values like
function fn(id) {
    return typeof(id) === 'number';
}
5,
function fn(id) {
    return typeof(id) === 'number';
}
6 and
function fn(id) {
    return typeof(id) === 'number';
}
7 are numbers too - though, we'll be ignoring those values.

1) Sử dụng isnan ()

function fn(id) {
    return typeof(id) === 'number';
}
8 xác định liệu một giá trị có phải là
function fn(id) {
    return typeof(id) === 'number';
}
5 hay không. Chúng ta có thể tận dụng điều này để xác định xem một biến có phải là loại số hay không.

var numberOfpushUpsToday = 34; 

if(!isNaN(numberOfpushUpsToday)){
    console.log('It is a number')
}
else {
    console.log('It is not a number')
}

Nhập chế độ FullScreenen EXIT Mode FullScreen

!isNaN(34) // returns true
!isNaN('34') // returns true
!isNaN('Hello') // returns false
!isNaN(true) // returns true
!isNaN(false) // returns true 
!isNaN('undefined') // returns false

Nhập chế độ FullScreenen EXIT Mode FullScreen

Hạn chế:

1) Nó trả về

function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
0 cho các giá trị boolean vì các giá trị boolean được chuyển đổi thành các số
function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
1 và
function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
2 theo đó đôi khi nó sẽ gây hiểu lầm. 2) Chúng tôi cũng có vấn đề tương tự cho giá trị
function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
3. Nó trả về đúng và do đó người ta phải cẩn thận trong khi viết mã.
2) We have same issue for the
function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
3 value as well. It returns true and hence one has to be careful while writing the code.

2) Sử dụng typeof ()

Toán tử

function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
4 trả về một chuỗi chỉ ra loại của toán hạng không được đánh giá.

num = 45
strng = '34'
typeof num // returns 'number'
typeof strng // returns "string"
typeof undefined // returns "undefined"
typeof null // returns "object"

Nhập chế độ FullScreenen EXIT Mode FullScreen

Nếu biến là số loại, nó sẽ trả về chuỗi

function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
5. Chúng ta có thể sử dụng điều này để xác định xem biến là loại số.

function fn(id) {
    return typeof(id) === 'number';
}
0

Nhập chế độ FullScreenen EXIT Mode FullScreen

function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
6 hoạt động tốt hơn nhiều so với
function fn(id) {
    return typeof(id) === 'number';
}
8. Nó xác định chính xác rằng một biến chuỗi, giá trị null và boolean không phải là số.

3) Sử dụng số.isfinite ()

Hàm

function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
8 xác định xem giá trị truyền có hữu hạn hay không. Các đối số trước tiên được chuyển đổi thành các số và sau đó kiểm tra xem giá trị là hữu hạn và do đó đây là cách tốt nhất trong số tất cả các phương pháp được đề cập ở trên.

function fn(id) {
    return typeof(id) === 'number';
}
1

Nhập chế độ FullScreenen EXIT Mode FullScreen

function fn(id) {
    return typeof(id) === 'number';
}
2

Nhập chế độ FullScreenen EXIT Mode FullScreen

Sự kết luận:

Mặc dù các phương pháp này có thể trở nên khó khăn với các giá trị Boolean,

function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
9 và
function fn(id) {
    return typeof(id) === 'number' &&
            isFinite(id) &&
            Math.round(id) === id;
}
3, nhưng chúng rất hữu ích trong việc giải quyết một số vấn đề trong cuộc sống hàng ngày. Người ta chỉ cần cẩn thận trong khi viết mã theo nhu cầu của họ.

Và điều đó tổng hợp nó lên !!! Cảm ơn bạn .. Nhận xét dưới đây nếu bạn có bất kỳ phản hồi hoặc suy nghĩ.
Thank you..
Comment below if you have any feedback or thoughts.

Phương pháp nào kiểm tra xem một đối số không phải không

phương thức isnan () isnan () trả về true nếu giá trị không phải là một số.Con số.isnan () trả về đúng nếu một số không phải là một số. isNaN() method returns true if a value is Not-a-Number. Number. isNaN() returns true if a number is Not-a-Number.

Làm cách nào để kiểm tra xem một biến là số hoặc chuỗi?

2) Sử dụng typeof (), toán tử loại trả về một chuỗi cho biết loại của toán hạng không được đánh giá.Nếu biến là số loại, nó sẽ trả về chuỗi 'số'.Chúng ta có thể sử dụng điều này để xác định xem biến là loại số.Loại () thực hiện tốt hơn nhiều so với isnan ().Using typeof() The typeof operator returns a string indicating the type of the unevaluated operand. If the variable is type number, it would return the string 'number' . We can use this to determine if the variable is number type. The typeof() performs much better than isNaN() .

Làm thế nào để bạn kiểm tra xem giá trị có phải là số nguyên trong JavaScript không?

Phương thức số.isinteger () xác định xem giá trị truyền có phải là số nguyên hay không.Number. isInteger() method determines whether the passed value is an integer.

Làm thế nào để bạn kiểm tra xem một chuỗi có chứa một số javascript không?

Để kiểm tra xem một chuỗi có chứa các số trong javascript, hãy gọi phương thức test () trên regex này: / \ d /.test () sẽ trả về true nếu chuỗi chứa số.Nếu không, nó sẽ trả về sai.Phương thức kiểm tra regexp () tìm kiếm sự phù hợp giữa biểu thức chính quy và chuỗi.call the test() method on this regex: /\d/ . test() will return true if the string contains numbers. Otherwise, it will return false . The RegExp test() method searches for a match between a regular expression and a string.