JavaScript高階程式設計(3)

2021-09-12 18:08:03 字數 654 閱讀 5625

js陣列的棧方法和佇列方法:

ecmascript陣列提供了讓陣列類似於其他資料結構的方法。

比如可以表現的像棧一樣,棧是一種資料結構(last in first out)。陣列的push()接受任意數量的引數,並逐個新增到陣列末尾,而pop()方法則從陣列末尾移除最後一項,減少陣列的length值,然後返回移除的項。

var sum = [1,2,3];

sum.push(4,5);

sum.pop();

console.log(sum);

[1, 2, 3, 4]

也可以表現的像佇列一樣,佇列資料結構訪問規則是(first in first out)。因此要模擬佇列只需從乙個陣列前端取得項的方法,使用shift()方法,它能夠移除陣列的第乙個項並返回該項,同時length減1,結合shift()和push()方法,可以像使用佇列一樣使用陣列。

var sum = [1,2,3];

sum.push(4);

sum.shift();

console.log(sum);

[2, 3, 4]

ecmascript還為陣列提供了unshift()方法,與shift()用途相反,它能在陣列前端新增任意個項並返回新陣列的長度。

JavaScript高階程式設計(3)

js陣列的棧方法和佇列方法 ecmascript陣列提供了讓陣列類似於其他資料結構的方法。比如可以表現的像棧一樣,棧是一種資料結構 last in first out 陣列的push 接受任意數量的引數,並逐個新增到陣列末尾,而pop 方法則從陣列末尾移除最後一項,減少陣列的length值,然後返回...

JavaScript高階程式設計

ecmascript有5種基本型別資料 另外還有一種複雜的資料型別 typeof就是用來檢測變數的資料型別的,typeof可能會返回以下值 typeof操作符在檢測引用型別的值時,總是會返回object,所以用處不大。instanceof用來檢測物件型別的,返回值是 true false。例如 pe...

JavaScript高階程式設計 this

在函式中this到底取何值,是在函式真正被呼叫執行的時候確定的,函式定義的時候確定不了 因為this的取值是執行上下文環境的一部分,每次呼叫函式,都會產生乙個新的執行上下文環境。所謂建構函式就是用來new物件的函式。其實嚴格來說,所有的函式都可以new乙個物件,但是有些函式的定義是為了new乙個物件...