摘要:數據類型轉換轉換為強制類型轉換方法如果調用和的會報錯函數對于具有方法類型,也會調用它的來進行轉換對于直接將其轉換為對于直接將其轉換為隱式類型轉換通過為任意類型加上一個空串的形式將其轉換為字符串轉換為強制類型轉換函數轉換的情況字符串如果是一個
數據類型轉換 轉換為String
強制類型轉換 1. toString()方法:
var a=10; a=a.toString();
如果調用undefined和null的toString()會報錯
2.String()函數
var a=10; a=String(a)
對于具有toString()方法類型,String()也會調用它的toSting()來進行轉換
對于null 直接將其 轉換為 "null"
對于undefined 直接將其 轉換為 "undefined"
隱式類型轉換 通過為任意類型加上一個空串的形式將其轉換為字符串
var a=10; a=a+"";轉換為Number
強制類型轉換 1.Number()函數
var num="10"; num=Number(num);
轉換的情況:
字符串: 如果是一個合法的數字 則直接轉換成對應的數字 如果不是一個合法的數字 則轉換成NaN 如果是空字符串和純空格的字符串 則轉換為0 布爾值: true轉換成1 false變成0 null:null直接轉換為0 undefined:undefined轉換為NaN 2.parseInt()函數 將一個字符串中的有效整數位提取出來 3. parseFloat()函數 將一個字符串中的有效小數提取出來 隱式類型轉換 使用一元運算符的"+"將任意的數據類型轉換為Number
var a="10"; a=+a;轉換為Boolean
強制類型轉換 調用Boolean()函數
var a=1; a=Boolean(a);
轉換的情況:
String 除了空字符串 其余都是true Number 除了0和NaN 其余都是true null和undefined都為false
隱式類型轉換
可以通過對任意類型的數據取反兩次 將其轉換為布爾值
var a=10; a=!!a;運算符(操作符)
通過運算符可以一個或多值進行運算
算數運算符+ - * / % 規則和數學中的規則一致一元運算符
+(正號) -(負號) ++ -- ! typeof instanceof delete二元運算符
+(加號) -(減號) / % > < >= <= == != === !== && || += -= /= %=三元運算符
?:
如果兩個操作數都是數字的話 進行加法計算 console.log(1+1) //2 如果操作數中出現字符串 進行字符串拼接 console.log(1+"個蘋果") //1個蘋果 除了加法運算符 其他算數運算符都將字符串類型自動轉換成number類型 再進行計算 console.log("2"-"2") //0
計算兩個數整除后的余數 求余的結果是正數還是負數,與第一個操作數的正負有關 console.log(5%3) //2 console.log(-5%3) //-2 console.log(5%-3) //2 console.log(-5%-3) //-2
自增 自增可以使變量在原來的基礎自增1 自增分成前++(++a) 和 后++(a++) 無論是++a 還是 a++都會使原變量立即自增1 不同的是++a 和 a++的值不同 ++a是變量自增后的值,新值 a++是變量自增前的值,原值
自減 自減可以使變量在原來的基礎自減1 自減分成前--(--a) 和 后--(a--) 無論是--a 還是 a--都會使原變量立即自減1 不同的是--a 和 a--的值不同 --a是變量自減后的值,新值 a--是變量自減前的值,原值
==與!= 只比較操作數的值 不比較類型 consolel.log(10 =="10") //true console.log(undefined == null) //true 都表示空 所以輸出為true
===和!== 既比值 又比較類型 console.log(10 ==="10") //false console.log(10 !=="10") //true
用于判斷參數是否是非數字值 多用于檢測轉換后的結果是否為合法的數字值 注:NaN與任何值進行比較 都是false 不能使用 == 或者 === 運算符判斷 只能用isNaN()函數 console.log(isNaN(parseInt("123abc"))) //true console.log(isNaN("123.456abc")) //true邏輯運算符 ! 邏輯非
可以對一個布爾值進行取反操作 如果對一個非布爾值進行邏輯非運算,會先將其轉換為布爾值,然后再取反 利用這個特點,可以為指定的值取兩次反,來將其轉換為布爾值。&& 邏輯與
可以對符號兩側的值做與運算 如果對非布爾值做與運算,會將其轉換為布爾值然后再運算, 最終會返回原值 如果第一個值是false,則直接返回第一個值 如果第一個值是true,則返回第二個值 js中的與運算是短路的與,如果第一個值是false,則不看第二個值|| 邏輯或
可以對符號兩側的值做或運算 如果對非布爾值做或運算,會將其轉換為布爾值然后再運算, 最終會返回原值 如果第一個值是true,則直接返回第一個值 如果第一個值是false,則返回第二個值 js中的或運算是短路的或,如果第一個值是true,則不看第二個值賦值運算符
= = 將符號右側的值賦值給符號左側的變量 += a += 5 相當于 a = a+5 -= 同+ *= 同+ /= 同+ %= 同+條件運算符(三元運算符)
?: 語法: 條件表達式?語句1:語句2 -執行流程: 三目運算符在執行時,會先對條件表達式進行求值判斷, 如果判斷結果為true,則執行語句1,并將執行結果返回 如果判斷結果為false,則執行語句2,并將執行結果返回
var salary =45000; var result=salary >30000 ? console.log("中產階級") : console.log(" 小康");
條件運算符嵌套
條件運算符中 每個表達式可以為另一個條件表達式 為條件運算符嵌套 var age=24; var result=age >=60 ? console.log("老年") :(age >=30 ? console.log("中年"):(age >18 ?console.log("成年"):console.log("未成年")) ) 代碼執行順序: age>=60 不符合條件繼續執行 age >=30 不符合條件繼續執行 age >18 滿足條件
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/96695.html
摘要:是一個運行在瀏覽器端的腳本語言現在已經不僅僅局限于瀏覽器端是一門解釋型動態類型的語言解釋型指語言在執行時不需要編譯,由瀏覽器自動編譯基本語法區分大小寫是一種區分大小寫的語言定義變量名稱一般用小寫定義常量名稱一般用大寫空格和換行中會 JavaScript - JavaScript是一個運行在瀏覽器端的腳本語言(現在已經不僅僅局限于瀏覽器端) - JavaScript是一門解釋型、動態類型...
摘要:數據科學包括機器學習,數據分析和數據可視化首先,機器學習是什么解釋機器學習的最佳方法是給你一個簡單的例子。機器學習算法的工作方式大致相同。這是一個人們競爭為特定問題構建最佳機器學習算法的網站。 showImg(https://segmentfault.com/img/remote/1460000018887722); 來源 | 愿碼(ChainDesk.CN)內容編輯 愿碼Sloga...
摘要:前端日報精選如何合理地設計的深入了解一個超快的引擎也稱全面了解作用域源碼分析二奇淫技巧總結整理下前端江湖面試對自己有益的題目。 2017-08-27 前端日報 精選 如何合理地設計Redux的State深入了解一個超快的 CSS 引擎: Quantum CSS (也稱?Stylo) ★ Mozilla Hacks全面了解JS作用域Zepto源碼分析(二)奇淫技巧總結整理下《前端江湖面試...
閱讀 1864·2021-11-25 09:43
閱讀 2146·2021-11-19 09:40
閱讀 3422·2021-11-18 13:12
閱讀 1739·2021-09-29 09:35
閱讀 661·2021-08-24 10:00
閱讀 2505·2019-08-30 15:55
閱讀 1709·2019-08-30 12:56
閱讀 1815·2019-08-28 17:59