第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

相同的代碼在不同的設(shè)備上運(yùn)行不同

相同的代碼在不同的設(shè)備上運(yùn)行不同

千萬里不及你 2021-06-21 21:26:19
我是編碼新手,仍在學(xué)習(xí)。我的朋友給了我一個(gè)任務(wù)來編寫一個(gè)函數(shù),該函數(shù)確實(shí)從數(shù)組中返回第二大數(shù)字,我已經(jīng)設(shè)法使用 array.prototype.sort() 來完成它。他說用“<”或“>”替換“-”以使代碼更清晰,這就是問題開始的地方。我在 Windows 上使用 VCS,但它無法正常工作。我的朋友使用 mac,一切正常。在 jsfiddle 上試了一下,一切正常。const secondMax = (arr) => {  return arr.sort((a, b) => b - a)[1]; //does return the correct number after console.log()};const secondMax = (arr) => {  return arr.sort((a, b) => a < b)[1]; //does not};"a < b" 應(yīng)該是降序排序 "a > b" 應(yīng)該是升序排序 但是無論我使用哪個(gè)運(yùn)算符,排序都會(huì)失敗并且只返回?cái)?shù)組中的第二個(gè)數(shù)字
查看完整描述

2 回答

?
森林海

TA貢獻(xiàn)2011條經(jīng)驗(yàn) 獲得超2個(gè)贊

你應(yīng)該返回一個(gè)數(shù)字,而不是一個(gè)布爾值。所以第一個(gè)是正確的。后者可能會(huì)在某些 javascript 引擎上偶然工作,但不能保證。


查看完整回答
反對(duì) 回復(fù) 2021-06-24
?
慕田峪4524236

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超5個(gè)贊

sortString默認(rèn)情況下對(duì)數(shù)組進(jìn)行排序。如果你傳遞一個(gè)比較器,那么它是一個(gè)function取決于兩個(gè)參數(shù)和return

  • 負(fù)數(shù),如果第一個(gè)參數(shù)小于第二個(gè)

  • 0 如果它們相等

  • 正,如果第一個(gè)參數(shù)大于第二個(gè)

使用邏輯運(yùn)算符代替上述運(yùn)算符是錯(cuò)誤的。

但是,如果您有興趣找到第二大數(shù)字,那么最好使用循環(huán)來完成:

var largestNumbers = [];

var firstIndex = (arr[0] < arr[1]) ? 1 : 0;

largestNumbers.push(arr[firstIndex]);

largestNumbers.push(arr[1 - firstIndex]);

for (var i = 2; i < arr.length; i++) {

    if (largestNumbers[1] < arr[i]) {

        if (largestNumbers[0] < arr[i]) {

            largestNumbers[1] = largestNumbers[0];

            largestNumbers[0] = arr[i];

        }

    }

}

這比對(duì)數(shù)組排序更快,更重要的是,它不會(huì)為了找到第二大數(shù)字而破壞您的初始順序。


查看完整回答
反對(duì) 回復(fù) 2021-06-24
  • 2 回答
  • 0 關(guān)注
  • 189 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)