arguments相關知識學習

2021-09-24 15:10:58 字數 833 閱讀 3486

今天在做題時碰到了這樣一段**var newarr = array.prototype.slice.call(arguments,1)

意思是取函式除了第乙個引數之後的剩餘引數生成乙個新陣列newarr。由於arguments是乙個類陣列,沒有slice方法,因此在array型別的原型鏈上呼叫slice()方法;call()函式裡面傳入arguments和1,是將slice()函式的呼叫物件設定為arguments,即在arguments上呼叫slice方法,1作為引數傳入slice方法,返回的新陣列包含arguments去掉第乙個引數後的所有引數。

關於argument引數

arguments物件是所有(非箭頭)函式中都可用的區域性變數,它是這個函式所有引數構造的集合,是乙個類陣列,除了length屬性和索引元素之外沒有任何array屬性,可以通過索引來訪問或是設定值例如arguments[1] = 'new value';

在函式中使用typeof arguments會返回object

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

var args = array.from(arguments);

var args = [...arguments];

相關屬性

arguments.callee

指向當前執行的函式。可用於迭代函式。

arguments.caller

指向呼叫當前函式的函式。

arguments.length

指向傳遞給當前函式的引數數量。

學習record相關知識

概念 當使用元組進行程式設計的時候,如果過於龐大的元素數量,將會很難記住。record提出來,是用於提供c語言裡面的一種類似structure的乙個有著固定數目字段的資料結構。記錄定義 record person,構造乙個record p1 person.例項 author erlang.hell ...

WinCE學習相關知識

知識一 activesync不能連線開發板的知識 1 剛開始正常連線,多次使用後出現不能連線的知識,清除wince登錄檔 2 不能連線的知識 pc是xp。知識二 wm timer優先順序與精度 1 wm timer訊息處理的優先順序比較低,同wm paint,一般來說,只有等訊息佇列沒有其他訊息時,...

機器學習相關知識

之前學習的東西很雜,都是想到哪個演算法,就去學。並沒有很系統的去理解他們的區別,這樣可能就沒辦法理解其真正的含義。再就是一心想著找實習,可是沒有足夠的水平水平很難去做這方面專案,即使找到了,可能也很low 所以其實我要做的是靜下心來,系統的,深入的去學習 理解和實現這些演算法 知識。常用的機器學習演...