JS中的!=、== 、!==、===的用法和區別。
js == 與 === 的區別
1、對於string,number等基礎型別,==和===是有區別的
1)不同型別間比較,==之比較“轉化成同一型別後的值”看“值”是否相等,===如果型別不同,其結果就是不等
2)同型別比較,直接進行“值”比較,兩者結果一樣
2、對於Array,Object等高階型別,==和===是沒有區別的
進行“指標地址”比較
3、基礎型別與高階型別,==和===是有區別的
1)對於==,將高階轉化為基礎型別,進行“值”比較
2)因為型別不同,===結果為false
JS中的!=、== 、!==、===的用法和區別。
var num = 1;
var str = '1';
var test = 1;
test == num //true 相同型別 相同值
test === num //true 相同型別 相同值
test !== num //false test與num型別相同,其值也相同, 非運算肯定是false
num == str //true 把str轉換為數字,檢查其是否相等。
num != str //false == 的 非運算
num === str //false 型別不同,直接返回false
num !== str //true num 與 str型別不同 意味著其兩者不等 非運算自然是true啦
== 和 != 比較若型別不同,先償試轉換型別,再作值比較,最後返回值比較結果 。
而
=== 和 !== 只有在相同型別下,才會比較其值。
相關文章
- JS中的!=、== 、!==、=== 的用法和區別JS
- js中!和!!的區別與用法JS
- SQL中IN和EXISTS用法的區別SQL
- Js中for in 和for of的區別JS
- JQuery中html()和val()的用法區別jQueryHTML
- java和js中正規表示式的用法和區別JavaJS
- PHP中MySQL、MySQLi和PDO的用法和區別PHPMySql
- PHP 中 bind 的用法 self 和 static 的區別PHP
- js中AMD和CMD的區別JS
- js中null和undefined的區別JSNullUndefined
- js中undefined和null的區別JSUndefinedNull
- JS中class和id的區別JS
- C++中break和continue的用法和區別C++
- Js中的subStr和subString的區別JS
- Js中concat和push的區別JS
- js中==和===的區別以及總結JS
- js中var和let的快速區別JS
- EXTJs 中icon 與iconCls的區別及用法!JS
- Linq中 AsQueryable(), AsEnumerable()和ToList()的區別和用法
- .NET中的三種Timer的區別和用法
- ajax與jsonp的區別及用法JSON
- Mybatis中updateByPrimaryKeySelective和updateByPrimaryKey的用法區別MyBatis
- Rust 中 *、&、mut、&mut、ref、ref mut 的用法和區別Rust
- SQLserver-MySQL的區別和用法ServerMySql
- JS中const、var 和let的區別JS
- JS陣列中(for...in)和(for...of)的區別JS陣列
- button 和input 的區別及在表單form中的用法ORM
- js中“==”與"==="的區別JS
- js中try和catch的用法JS
- mysql中tinyint、smallint、int和bigint型別的用法區別MySql型別
- exists和not exists及in和not in的用法與區別
- Linux中&&和&,|和||用法及區別詳解!Linux
- @JsonProperty和@JsonAlias的區別JSON
- set autotrace的用法和含意及區別
- Vue.js中 computed 和 methods 的區別Vue.js
- js中style,currentStyle和getComputedStyle的區別JS
- JS中apply和call的用法JSAPP
- delphi中的語法 div / mod 的用法區別