騰訊分分彩原始碼搭建出租變數、資料型別和運算
1、JavaScript用來做什麼 騰訊分分彩原始碼搭建出租【地瓜原始碼論壇diguaym.com】聯絡方式:QQ:2152876294原始碼交易,原始碼出售, 技術交易,專注於為企業 、個人提供個性化定製解決方案,更加高效便捷的為廣大需求者解決各種實際性需求問題,為您提供最新、最熱、最一手的 原始碼資源。
HTML:專門編寫網頁內容的語言
CSS:專門美化網頁內容樣式的語言
JavaScript:專門編寫互動程式的語言
JavaScript包含三個方面:ECMAScript標準+DOM標準+BOM
2、常用語句
在控制檯中輸出一段話 console.log(“Hellow World”);
在當前網頁中輸出一段話 document.write(“Hellow World”);
在彈出的警告窗中輸出一段話 window.alert(“Hellow World”);
在彈出的警告窗中輸出“請輸入”,並且建立一個輸入框獲取輸入的資訊
window.propt(“請輸入”);
3、在網頁中編寫js指令碼程式:3處
①<script>元素中:
直接編寫在<script>中的js程式,隨網頁載入過程解釋執行
②單獨js檔案儲存js指令碼程式:2步:
1. 建立.js檔案,儲存js指令碼程式
2. <script src="url"></script>引入外部js檔案
指令碼程式:不需要預編譯,邊解釋邊執行的程式
③元素的事件處理程式中編寫
不隨網頁載入過程執行,只有觸發事件時,才執行。
4、變數
①使用變數的流程:宣告,賦值,取值
②僅宣告未賦值的變數,預設值自動是undefined
③為一個未宣告過的變數賦值,不會出錯!會自動建立同名變數(全域性變數),再儲存資料,但是這個全域性變數只有函式被引用後才能在全域性函式中使用,否則會顯示未定義
function a(){
b=4;
}
console.log(b); //出錯
function a(){
b=4;
}
a();
console.log(b); //輸出: 4
④嘗試從一個未宣告過的變數中取值:會出錯! ReferenceError:未找到或未定義
⑤宣告提前:在程式正式執行前,都會將所有var宣告的變數提前到開始位置(函式內變數提前到函式開始位置),集中建立 ,***賦值留在原地***
console.log(a); //undefined 宣告提前,雖有宣告,但是還未賦值
var a=100;
console.log(a); //100
var a=200;
console.log(a); //200
5、資料型別
① js中資料型別包括原始型別和引用型別兩種,
②原始型別:值儲存在變數本地的資料型別
5+1種:Number 專門儲存數字的型別
String 專門儲存字串的型別
Boolean 專門儲存真/假二選一的型別
undefined 只有一個值undefined
null 表示不指向任何地址
symbol 用來定義物件的唯一屬性名(ES6新增)
③引用型別:值不儲存在變數本地的資料型別,變數中只是儲存地址,當地址中儲存的值改變時,引用型別的值也會發生變化
6、Number型別:專門儲存數字的型別,不加引號
①所佔空間:64位二進位制數儲存(64Bit=8bytes、1KB=1024byte)
數字所佔空間和數值大小無關,所有數字都佔8位元組
②n.toFixed(m):將n按m位小數四捨五入 // var n=3.1415;n.toFixed(2) 結果"3.14"
③NaN(Not a Number):NaN與任何資料做運算結果都為NaN,屬於Number型別的資料
7、String型別:專門儲存一串字元的序列,必須帶引號
①所佔空間:js的程式記憶體中的字元都是用unicode標識的
每個字母、標點:1位元組 每個漢字:2位元組
② +:如果參與+運算的值中包含字串型別資料,+法運算自動變為字串拼接!
b1=true,n2=3,s3="3";
console.log(b1 + n2 + s3);
true + 3 + “3”
4 + “3”
“43”
8、Boolean型別:只有兩個值true/false。
如果表示二選一的值時,就用Boolean型別,用於比較結果或當做判斷條件時
9、資料型別:隱式轉換
①算數計算時隱式轉換
算數計算中,一切型別都隱式轉為number型別,再計算
"2"-->2 true/false-->1/0
特例:+(只有+的時候)運算中,只要有一方是字串,兩資料都轉為字串,且+運算變為字串拼接!
②當做為判斷條件時隱式轉換
一切型別都隱式轉為Boolean型別
“”,undefined,null,NaN,0這五個隱式轉換為 false,其餘都隱式轉換為true
例 if("false"){console.log("Hellow")}else{console.log("Baybay")}
輸出為Hellow,因為"Hellow"是不為空的字串,轉換為true
③隱式轉換,僅影響表示式的運算結果,不影響變數中儲存的實際值
10、資料型別:顯式轉換
例:parseInt(true);輸出結果 NaN
首先parseInt(str)是用來將字串轉為數字的,true將先被進行隱式轉換,執行String(true)方法將Boolean型true變為String型”true”,再執行parseInt(”true”),最終得NaN
11、運算子
① % 取餘 5%2==1 5/2==2餘1
② ++將當前變數中的值遞加1
難點:n++與++n的區別
var a=10;
var b=a++;
console.log("a:"+a,"b:"+b);// a:11 b:10
var a=10;
var b=++a;
console.log("a:"+a,"b:"+b);// a:11 b:11
無論是a++還是++a,最終的a值都是加了1,所以a都為11,但是b=a++時是先將a值賦給了b,再自加一,b=++a時是先自加一,此時a=11,再將a值賦給了b,b也為11
③+=:a+=b等於a=a+b
12、關係運算:將兩個值作比較 > < >= <= == !=
/*我還寫過一篇《JavaScript中判斷兩個值是否相等(各種情況)》,裡面介紹關係運算各種情況的更仔細*/
只能返回兩個值之一:如果成立,返回true;否則返回false
隱式轉換:將所有型別都轉為number型別,再比較!
3種特殊情況
①兩字串做比較:依次PK每一位字元的unicode編號
只要有一位字元,分出大小,就不再比較
比如:"3">"10" -->true "Smith">"Scott" -->true
② NaN: NaN和任何資料做大小或等於比較永遠返回false
NaN和任何資料做*不等於*比較,永遠返回true
isNaN(num):專門判斷num是否是NaN isNaN(f);//先隱式轉換 true
如果是NaN返回true,否則返回false isNaN(1);//false
判斷一個數值是否是數字或能否被轉為數字,都用isNaN。如果是數字,返回false!否則返回true
③ undefined 與 null
undefined == null //true undefined === null//false
==:相等,值相等即可,可以有隱式轉換
===: 全等:資料型別要相同,再比較值是否相等
undefined和null與任何有意義的值比較返回的都是false,null與undefined在與其他數相等運算時不進行型別轉換
13、邏輯運算與位運算
①隱式型別轉換:自動將每個條件轉為Boolean型別,用來比較,如果要輸出,輸出的還是最初的資料, &&:必須都為真才為真,||:一個為真就為真, ^:異或,不同為1,相同為0
②
console.log(4&&false); false
console.log(false&&4);false
console.log(false&&0); false
console.log(5&&4); 4
console.log(4||false); 4
console.log(0||false);false
console.log(5||4); 5
*當邏輯運算子執行了一個條件後,如果已經完成了自己的使命,那麼就停止下來,輸出*
console.log(4&&false); false//4條件為真,未完成&&使命,繼續判斷false條件,無論真假,都能完成使命,輸出最後判斷條件的值
console.log(false&&4);false//false條件為假,可以完成&&使命,輸出最後判斷條件的值
console.log(0||false);false//0條件為假,不能完成||使命,繼續判斷false條件,無論真假,都能完成使命,輸出最後判斷條件的值
console.log(4||false); 4//4條件為真,可以完成||使命,輸出最後判斷條件的值
③短路邏輯:如果前一個條件已經可以得出結論,則後續條件不再執行!
例:消費滿100就打8折 totle>=100&&(total*=0.8);
14、三目運算(最簡單的三目運算 var max=a>b?a:b;結構為:條件1?值1:預設值;)
三目運算結構
條件1?值1:
條件2?值2:
… ? … :
預設值;
score>90?”A”:
score>80?”B”:
score>=60?”C”:
“D”;
15、typeof
用typeof可以檢測出變數的基本資料型別,但是有個特例,就是null的typeof返回的是object,這是個javascript的歷史bug。。。
typeof Symbol() //"symbol" typeof Number() //"number"
typeof String() //"string" typeof Function() //"function"
typeof Object() //"object" typeof Boolean() //"boolean"
typeof null //"object" typeof undefined //"undefined"
---------------------
作者:kun鯤
來源:CSDN
原文:https://blog.csdn.net/shilipeng666/article/details/84030999
版權宣告:本文為博主原創文章,轉載請附上博文連結!