3.1 函數基本概念

3.2.1 操作符

1.一元操作符:前置 後置

var num1 = 2;
var num2 = 20;
var num3 = --num1 + num2; // 等於 21
var num4 = num1 + num2; // 等於 21

前置的num1 和—-num1 值都會減1

var num1 = 2;
var num2 = 20;
var num3 = num1-- + num2; // 等於 22
var num4 = num1 + num2; // 等於 21

後置num1的值減1 ,num1—-值不變。

2.位操作符:
 按位非~

var num1 = 25; // 二進制 00000000000000000000000000011001
var num2 = ~num1; // 二進制 11111111111111111111111111100110
alert(num2); // -26
var num1 = 25;
var num2 = -num1 - 1;
alert(num2); // "-26"

第一種速度更快
 按位與and &

var result = 25 & 3;
alert(result); //1

25 = 0000 0000 0000 0000 0000 0000 0001 1001
3 = 0000 0000 0000 0000 0000 0000 0000 0011
AND = 0000 0000 0000 0000 0000 0000 0000 0001
 按位或or |

var result = 25 | 3;
alert(result); //27

 按位異或 xor

var result = 25 ^ 3;
alert(result); //26

左移操作符,右移操作符;無符號右移

var oldValue = 2; // 等於二進制的 10
var newValue = oldValue << 5; // 等於二進制的 1000000,十進制的 64

3.關係操作符 < > <= >=
 如果兩個操作數都是數值,則執行數值比較。
 如果兩個操作數都是字符串,則比較兩個字符串對應的字符編碼值。
 如果一個操作數是數值,則將另一個操作數轉換爲一個數值,然後執行數值比較。
 如果一個操作數是對象,則調用這個對象的 valueOf()方法,用得到的結果按照前面的規則執
行比較。如果對象沒有 valueOf()方法,則調用 toString()方法,並用得到的結果根據前面
的規則執行比較。
 如果一個操作數是布爾值,則先將其轉換爲數值,然後再執行比較。

4.逗號操作符
var num = (5, 1, 4, 8, 0); // num 的值爲 0
在用於賦值時,逗號操作符總會返回表達式中的最後一項。

5.for-in 語句
for-in語句是一種精準的迭代語句,可以用來枚舉對象的屬性。例如

for (var properName in window) {
		console.log(properName);
}

用for-in來顯示window對象所有的屬性。每次循環都把window對象的屬性名賦值給propName.

6.with 語句
with的作用是簡化多次編寫同一對象的工作。但在嚴格模式下會出錯。

var qs = location.search.substring(1);
var hostName = location.hostname;
var url = location.href;

with(location){
	var qs = search.substring(1);
	var hostName = hostname;
	var url = href;
}


7.函數
function function_name () {
return;
}
用在需要提前停止執行函數,而又不需要返回值時,此時返回的是undefined
嚴格模式對函數有一些限制:
 不能把函數命名爲 eval 或 arguments;
 不能把參數命名爲 eval 或 arguments;
 不能出現兩個命名參數同名的情況。
如果發生以上情況,就會導致語法錯誤,代碼無法執行。

8.理解參數:
JavaScript中的參數與其他語言不同,參數在內部是用一個數組表示的。函數接收到的始終是這個數組,而不關心包含哪些參數,實際上在函數體內部可以通過arguments這個對象來訪問這個數組。例如

function say () {
	console.log(arguments.length);
}
say(1,2,3);//3,輸出傳入參數的個數
say(1,2,3,3,3);//5

謝謝觀看,走過路過,希望點個贊,留下您的足跡

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章