Hướng dẫn what is difference between != and !== in javascript? - sự khác biệt giữa! = và! == trong javascript là gì?

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    • Đọc
      • Bàn luận
      • ! = toán tử
      • Toán tử bất bình đẳng (! =) Là đối diện logic của toán tử bình đẳng. Điều đó có nghĩa là không phải bằng nhau và trả về đúng khi sự bình đẳng sẽ trả về sai và ngược lại.
    • Giống như toán tử bình đẳng, toán tử bất bình đẳng sẽ chuyển đổi các loại dữ liệu của các giá trị trong khi so sánh.
      • Ví dụ 1!
      • ! == Toán tử
      • Toán tử bất bình đẳng nghiêm ngặt (! ==) là đối diện logic của toán tử bình đẳng nghiêm ngặt. Điều đó có nghĩa là nghiêm ngặt không bằng nhau và trả về đúng khi sự bình đẳng nghiêm ngặt sẽ trả về sai và ngược lại.

    Example:

    Ví dụ 1!

        function NotEqual(val) {

            if (val != 1) {

                ____10

    if( '5' != 5 ){
        return false;
    }else{
        return true;
    }
    
    1
    if( '5' != 5 ){
        return false;
    }else{
        return true;
    }
    
    2

            

            ____10

    if( '5' != 5 ){
        return false;
    }else{
        return true;
    }
    
    9
    if( '5' != 5 ){
        return false;
    }else{
        return true;
    }
    
    2

    function5function6 function7

    function5function9 NotEqual(val) {0

    function5NotEqual(val) {2 NotEqual(val) {3NotEqual(val) {4NotEqual(val) {5

    function5NotEqual(val) {7 NotEqual(val) {8NotEqual(val) {4NotEqual(val) {5

    function5        2 NotEqual(val) {3        44

    function5        7 NotEqual(val) {8        4NotEqual(val) {5

    if7

    Output:

    Hướng dẫn what is difference between != and !== in javascript? - sự khác biệt giữa! = và! == trong javascript là gì?

    function5if2 if3

    function5if5 if6

    if8 sẽ chỉ kiểm tra giá trị bất kể loại toán hạng. Nhưng if9 được sử dụng để so sánh cả giá trị & loại 2 toán hạng đang được so sánh với nhau.

    Khi so sánh độ dài của các mảng, rõ ràng cả hai đều là số nguyên nên không cần phải so sánh các loại của chúng. Nhưng để so sánh các yếu tố trong mảng các loại của chúng rất quan trọng. Ví dụ: giả sử so sánh chuỗi 5 và số nguyên 5:

    if( '5' !== 5 ){
        return false
    }else{
        return true;
    }
    

    Đoạn trích trên sẽ trả về sai vì hai toán hạng là loại khác nhau. Nhưng điều này không thể bị bắt bởi if8, ý tôi là:

    if( '5' != 5 ){
        return false;
    }else{
        return true;
    }
    

    sẽ trả về đúng.

    Theo nguyên tắc thông thường, hãy nhớ rằng:

    JavaScript có cả so sánh bình đẳng nghiêm ngặt và chuyển đổi kiểu. Đối với bình đẳng nghiêm ngặt, các đối tượng được so sánh phải có cùng loại và:

    • Hai chuỗi hoàn toàn bằng nhau khi chúng có cùng một chuỗi các ký tự, cùng độ dài và cùng một ký tự ở các vị trí tương ứng.

    • Hai số hoàn toàn bằng nhau khi chúng bằng số (có cùng một giá trị số). Nan không bằng bất cứ điều gì, kể cả Nan. Các số không tích cực và tiêu cực bằng nhau.

    • Hai toán hạng boolean hoàn toàn bằng nhau nếu cả hai đều đúng hoặc cả hai đều sai.

    • Hai đối tượng hoàn toàn bằng nhau nếu chúng đề cập đến cùng một đối tượng.

    • Các loại NULL và không xác định là == (nhưng không ===). [I E. (Null == không xác định) là đúng nhưng (null === không xác định) là sai]

    Trích dẫn từ: https://stackoverflow.com/a/523647

    Là gì! = Và! == trong JavaScript?

    Toán tử bất bình đẳng (! =) Kiểm tra xem hai toán hạng của nó không bằng nhau, trả về kết quả boolean. Không giống như toán tử bất bình đẳng nghiêm ngặt, nó cố gắng chuyển đổi và so sánh các toán hạng có các loại khác nhau. ) checks whether its two operands are not equal, returning a Boolean result. Unlike the strict inequality operator, it attempts to convert and compare operands that are of different types.

    Sự khác biệt giữa! = Và! == trong TypeScript là gì?

    Trong chức năng này, khi nó được so sánh chiều dài của mảng nó được sử dụng! = Toán tử và khi nó so sánh tất cả các phần tử của mảng nó đang sử dụng! ==when it is compared the lenght of the array it is used != operator and when it is comparing all elements of the array it is using !==

    Tại sao chúng ta thích === và! == Over == và! = Trong JavaScript?

    Điều này là do toán tử bình đẳng == không ép buộc loại, có nghĩa là trình thông dịch đã ngầm cố gắng chuyển đổi các giá trị trước khi so sánh.Mặt khác, toán tử nhận dạng === không thực hiện ép buộc loại và do đó không chuyển đổi các giá trị khi so sánh.the equality operator == does type coercion, meaning that the interpreter implicitly tries to convert the values before comparing. On the other hand, the identity operator === does not do type coercion, and thus does not convert the values when comparing.

    Là! = Giống như ==?

    Toán tử bằng nhau (==) trả về true nếu cả hai toán hạng có cùng giá trị;Nếu không, nó trả về sai.Toán tử không bằng nhau (! =) Trả về đúng nếu các toán hạng không có cùng giá trị;Nếu không, nó trả về sai.The not-equal-to operator ( != ) returns true if the operands don't have the same value; otherwise, it returns false .