一、運算符
一、位運算符
將數字轉換爲二進制後進行運算
只作整數運算,若是是小數的話,則去掉小數位再運算
二、位運算
一、按位 與:&
語法:a&b;
二、按位 或|
語法:a|b
任何場合:任何小數與0作按位或的操做,能夠快速轉換爲整數(並四捨五入)
三、按位 異或:^
語法:a^b
三、賦值和擴展賦值運算符
一、賦值運算符:=
二、擴展賦值運算符
+=,-=,*=,/=
三、條件運算符(三目運算)
單目(一元)運算符:++,--,!
雙目(二元)運算符:+,-,*,/,%,<,>,......
三目(三元)運算符:?:
一、語法
條件?表達式一、表達式2;
條件是一個Boolean類型的數據,若是條件結果爲true,則執行表達式1的內容
並將表達式1的結果作爲總體表達式的結果,若是條件爲false,則執行表達式二、的內容,
並將表達式2的結果作爲總體表達式的結果。
demo
<script>
var a=Number(prompt("請輸入一個數字"));
var b=Number(prompt("請輸入一個數字"));
a>b&&(a^b,b^a,a^=b);
console.log(a,b);
</script>
函數:
一、什麼是函數
函數(function)是一段預約義好,而且能夠被反覆使用的代碼塊
預約義好:事先聲明,但不是立刻執行
反覆使用:能夠被屢次調用
代碼塊:包含多條可執行的語句
二、函數的
聲明與調用
一、普通函數
語法:function 函數名(){
語句塊;
}
調用:在JS中任何合法位置處,均可以經過 函數名()的方式進行調用
demo:<script>
function sayhello(){
console.log("hello world");
console.log("你好");
}
function textsayhello(){
console.log("如今進入textsayhello函數");
sayhello();
console.log("textsayhello執行完");
}
sayhello();
</script>
<button onclick="sayhello();">單據</button>
<button onclick="textsayhello();">調用textsayhello</button>
二、帶參函數
語法:function 函數(參數列表){
語句塊;
}
參數列表:
能夠由0或多個參數的名稱來組成,多個參數的話中間用, 隔開
定義函數時的參數列表,都稱爲「形參(形式參數)」
二、調用的語法
任意合法JS位置處
函數名(參數列表);
調用函數時,所傳遞的參數列表,稱之爲"實參(實際參數)"
demo:
<script>
function change(a,b){
a > b && (a^=b,b^=a,a^=b);
console.log(a,b);
}
</script>
<button onclick="change(3,5)">調用change函數</button>
四、經常使用的帶參函數
parseint(變量);
parsefloat(變量);
number(變量);
console.log("");
三、帶返回值的函數
由函數體內 帶到函數體外的數據,叫作返回值
語法:
function 函數名(參數列表){
語句塊;
return 值;
}
容許經過一個變量來接收調用函數後的返回值
var 變量名=函數名(實參列表);
三、做用域
一、什麼是做用域
指的是變量和函數 能夠訪問範圍,做用域分爲兩大類
一、函數做用域
只在定義的函數內容許訪問變量和函數
二、全局做用域
一經定義,在如何位置處都能訪問
二、函數做用域的變量
在某個函數中說明的變量,就是函數做用域中的變量,也能夠稱之爲」局部變量「
三、全局做用域的變量
一經說明,任何位置都能使用,又稱爲「全局變量」
聲明方式
一、將變量聲明在最外層,全部的function以外
二、聲明變量時,不使用var關鍵字,一概是全局變量,但有風險
建議
全局變量,儘可能都聲明在全部的function以外
聲明變量時,也一概都使用var關鍵字
四、什麼是聲明提早
JS程序在正式執行前,會將使用var聲明 的變量以及function聲明的函數,
預讀到所在做用域的頂端。但賦值還保留在原位置上
建議
最好將變量的聲明和函數的聲明集中到所在做用域的最頂端
五、按值傳遞
基本數據類型的數字在作參數傳遞時,實際上時傳遞的是參的副本到函數中,
原始數據併爲發生過改變