FCC學習記錄 瞄準與消滅

2021-10-02 09:23:04 字數 1301 閱讀 5203

瞄準和消滅

在這道題目中,我們要寫乙個叫destroyer的函式。傳給它的第乙個引數是陣列,我們稱他為初始陣列。後續的引數數量是不確定的,可能有乙個或多個。你需要做的是,從初始陣列中移除所有與後續引數相等的元素,並返回移除元素後的陣列。

注意:你可以使用arguments物件,也可以使用…,即「剩餘引數」(rest parameters)

arguement物件解法

arguments物件是所有(非箭頭)函式中都可用的區域性變數。你可以使用arguments物件在函式中引用函式的引數。此物件包含傳遞給函式的每個引數,第乙個引數在索引0處。例如,如果乙個函式傳遞了三個引數,你可以以如下方式引用他們:

arguments[0]

arguments[1]

arguments[2]

arguments物件不是乙個 array 。它類似於array,但除了length屬性和索引元素之外沒有任何array屬性。例如,它沒有 pop 方法。但是它可以被轉換為乙個真正的array:

var args = array.prototype.slice.

call

(arguments)

;var args =

.slice.

call

(arguments)

;// es2015

const args = array.

from

(arguments)

;const args =

[...arguments]

;

您還可以使用array.from()方法或擴充套件運算子將引數轉換為真實陣列:

var args = array.from(arguments);

var args = […arguments];

第一種解法:

function

destroyer

(arr)}}

return arr.

filter

(boolean)

;}

第二種解法:

function

destroyer

(arr));

}

第三種解法(擴充套件運算子):

function

(arr,

...args)

destroyer([

1,2,

3,1,

2,3]

,2,3

);// [1, 1]

Linux USB的學習與記錄

linux usb 四種不同的資料傳輸方式 1.控制傳輸 control transfers 2.中斷傳輸 interrupt data transfers 3.批量傳輸 bulk data transfers 4.等時傳輸 isochronous data transfers 裝置可以有多個介面,...

學習記錄 C與C STL

注 僅 vector 和 string 支援對迭代器進行加減某個數字 it自增自減除外 迭代器.begin 指向首元素,而.end 指向尾元素的下乙個。quad 常用的容器即 變長陣列 字元陣列 字串 廣義陣列鍵值對 對映 集合 各種資料結構。優先使用迭代器來定位或遍歷,其通用操作多 quad 若想...

github與gitee學習記錄

gitee是中文版本的 git乙個本地倉庫對應乙個遠端倉庫 第一次提交的時候需要設定當前使用者 git config global user.name ann0208 git config global user.email xx qq.com 1 個人使用 遠端倉庫 github 本地倉庫 資料夾...