您的位置:首頁技術文章
文章詳情頁

JavaScript中怎么理解=、==和===

瀏覽:91日期:2023-04-19 10:24:10

問題描述

JavaScript中怎么理解=、==和===,如何理清這三者之間的關系?

問題解答

回答1:

= : 賦值操作

==: 用來判斷兩個值是否相等,但是這里的判斷是經過隱式轉換的結果。例如

1 == ’1’; // true1 == true; // true0 == false; // true

===: 也是用來判斷兩個值是否相等,但是不會有隱式轉換的過程,而是直接判斷,因此也叫做絕對相等/全等。

1 === ’1’; // false1 === true; // false0 === false; // false

1、對于string,number等基礎類型,==和===是有區別的

不同類型間比較,==之比較“轉化成同一類型后的值”看“值”是否相等,===如果類型不同,其結果就是不等

同類型比較,直接進行“值”比較,兩者結果一樣

2、對于Array,Object等高級類型,==和===是沒有區別的

進行“指針地址”比較

3、基礎類型與高級類型,==和===是有區別的

對于==,將高級轉化為基礎類型,進行“值”比較

因為類型不同,===結果為false

回答2:

’=’: 表示賦值,

var a = 1, b = 2;return a = b; //返回2,為a賦值b,即a為2

’==’: 判斷值是否相同,不判斷類型

var a = 1, b = ’1’;return a == b; //返回true

’===’: 精確判斷,不僅判斷值還判斷類型

var a = 1, b = ’1’;return a === b; //返回false

1、對于string,number等基礎類型,==和===是有區別的

不同類型間比較,==之比較“轉化成同一類型后的值”看“值”是否相等,===如果類型不同,其結果就是不等

同類型比較,直接進行“值”比較,兩者結果一樣

2、對于Array,Object等高級類型,==和===是沒有區別的進行“指針地址”比較

3、基礎類型與高級類型,==和===是有區別的

對于==,將高級轉化為基礎類型,進行“值”比較

因為類型不同,===結果為false

回答3:

=是賦值運算符

let a=b // 將值b賦給變量a

== 和===是比較運算符

a == b 比較a與b值是否相等a === b 比較a與b是否全等,值和類型都要相同回答4:

==會進行隱式數據類型轉換,===不會,就是比較兩側是否真的相等http://www.softwhy.com/articl...

回答5:

“=”用來賦值,直接賦值。

'=='運算符,會先轉換,在運算。

'==='絕對相等,兩邊的值和類型都相等才相等。

回答6:

盡量多用=== ==很容易出問題

標簽: JavaScript
相關文章:
国产综合久久一区二区三区