簡體   English   中英

在javascript中定義數組函數

[英]Defining an array function in javascript

在一次采訪中,我被要求為以下場景編寫代碼。

var ele = [2,5,4,8,4,9].second();

如果上面的語句是用 javascript 編寫的,它 ele 應該包含該數組中第二高的元素。 在這種情況下,它應該包含 8。

你如何為此編寫代碼? 我假設我們將不得不編寫一個function second()

但是我們如何調用確保它將數組作為該參數?

請幫我解決一下這個。 先感謝您。

這應該讓你開始

Array.prototype.second = function() {
  var biggest = -Infinity;
  var second = -Infinity;
  for (var i = 0; i < this.length; ++i) {
    if (this[i] > biggest) {
      second = biggest;
      biggest = this[i];
    } else if (this[i] < biggest && this[i] > second) {
      second = this[i];
    }
  }
  return second;
};

您應該包括錯誤處理,並且有足夠的空間來優化此解決方案。

向 Array 對象的Prototype添加一個方法。

Array.prototype.second = function() {
  // Your logic here
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM