<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
</body>
<script>
/*? ? 1.其他數(shù)據(jù)類型轉(zhuǎn)轉(zhuǎn)為Number類型
isNaN? Number? ? parseInt? parseFloat? ? 在進行加減乘除運算符時
列子? true? ->1? false->0? ""->0? ? "12"->12? "sss"->NaN? null->0? undefined? -> NaN? '12px'->12/NaN(看用誰裝換)
引用數(shù)據(jù)類型轉(zhuǎn)換為數(shù)字
{}? /^$/? ? function(){}? ---->NaN
*
*
*
*? ? ? []--->""--->0
*? ? ? 解釋 引用數(shù)據(jù)類型調(diào)用toString方法把數(shù)組裝換為字符串,在調(diào)用number把字符串裝換為數(shù)字
*
*? ? ? js中的數(shù)學運算
*? ? ? + - *? 、
*? ? ? 除了加法具有特殊性父阻,其他運算符都是數(shù)學運算爽丹,遇到了非有效類型都會轉(zhuǎn)換為數(shù)字運算
*? ? ? 加法的特殊性:遇到字符串屬于字符串拼接? 不是字符串才是數(shù)學運算
*? ? ? 1-'1'? ? ? 0
*? ? ? 10*null? ? 0
*? ? ? 10/undefined NaN
*? ? ? 10*[10]? ? 100
*? ? ? 1+'1'? ? ? '11'
*? ? ? 1+'null'? ? '1null'
*
*
*? ? ? 字符串拼接: 是把其他的值轉(zhuǎn)換為字符串然后在進行拼接(toString)
*? ? ? 其他數(shù)據(jù)類型在調(diào)用toString時時直接的用單雙引號包起來即可,
*? ? ? 只有對象的toSring是 '[Object,Object]'
* */
// var a=1+null+true+undefined+[]+'珠峰'+null+undefined+[]+10;
/*
1+null? ? ? ? 1
1+true? ? ? ? 2
2+undefined? NaN
NaN+[]? ? ? ? 'NaN'
'NaN'+'珠峰'? 'NaN珠峰'
'NaN珠峰'+null 'NaN珠峰'
'NaN珠峰'+undefined 'NaN珠峰undefined'
'NaN珠峰undefined'+[]? 'NaN珠峰undefined'
'NaN珠峰undefined'+_10? 'NaN珠峰undefined10'
*/
// console.log(a);//NaN珠峰undefined10
// 2.將其他數(shù)據(jù)類型轉(zhuǎn)換為布爾類型
/*Boolean ! !!*/
// 在條件判斷的時候也會轉(zhuǎn)換為布爾類型
// 0 NaN "" null undefined? 是false? ? 其余都是true
// []? ? true
//-1? ? true
// if (box){? ? 看box拿到的值來看條件是否成立
//
// }
/*
*? if (3+'3px'){
*? ? ? ? ? 條件成立
*
*
*
*? }
*
*if (3-'3px'){
*? ? ? ? ? 條件不成立
* }
* */
// 在使用==比較的時候
//在使用==號比較的時候如果等號左右兩邊的數(shù)據(jù)類型不一樣的話瀏覽器會自動把他的數(shù)據(jù)類型轉(zhuǎn)換為一樣
// 并且===不會
// javascript
// ===>對象和對象? 比較的是空間地址,不是相同扥空間結(jié)果是false
// []==[]? ---->? false
// var a={}
// b=a;
// a==b? ---->true
// 對象和數(shù)字:? 把對象轉(zhuǎn)換為數(shù)字
// []==0? -->true
//{}==NaN --->false? NaN和任何數(shù)字都不相等
// 對象和字符串:把兩邊都轉(zhuǎn)換為數(shù)字比較的
// []==''-->true
// [12]=='21px' false
//對象和布爾:把兩邊都轉(zhuǎn)換為數(shù)字
// []==true? --->false
// []==false? --->true
// ![]==false? ---->false
// 字符串和數(shù)字? 字符串轉(zhuǎn)換為數(shù)字
// 字符串和布爾? 都轉(zhuǎn)換為數(shù)字
// 布爾和數(shù)字? ? 布爾轉(zhuǎn)換為數(shù)字
// ==>規(guī)律:兩個等于號比較蔫劣,左右兩邊的數(shù)據(jù)類型不一樣,瀏覽器會自動他兩邊的數(shù)據(jù)類型轉(zhuǎn)換為數(shù)字在比較,但是null和undefined除外
//null==undefined? //true
//null===undefined //false
// null以及undefined和其他任何值都不相等
// null==0? --->false
</script>
</html>