下記のやり方で配列の最大値の値のインデックス番号を取得しようとしておりますが、取得が失敗してしまいます。
取得方法でどこかミスがありますでしょうか。
var new_floor_plan1 = [ 2,2,2,3,3,3,5,5,5,5,5,5 ] var new_floor_plan1 = new_floor_plan1.filter(function (x, i, self) { return self.indexOf(x) === i; // 重複削除(2,3,5が取得できる) }); var max_floor_plan1 = new_floor_plan1.reduce((a,b)=>Math.max(a,b)); // 最大値取得 console.log(max_floor_plan1); // 5が取得できる var max_floor_plan1_index = new_floor_plan1.indexOf(max_floor_plan1); console.log(max_floor_plan1_index); // 最大値のインデックス番号を取得したいがうまく取得できず-1になってしまう
(見間違えでしたので削除)
説明不足で失礼いたしました。
インデックス番号は2が取れると思ったのですが、-1(該当なし)が結果で返ってきました。
((2,3,5)の最大値の5のインデックス番号なので。)
手元のChromeで実行しましたが、再現しません(きちんと「2」が返っています)。
https://jsfiddle.net/jyzmh2xf/
修正したら編集履歴が残るので「追記」等記載する必要はありません。その文字分タイトルが詰まるので要件伝わりにくくなります
ご確認とご指摘を頂き誠にありがとうございます。
再度自分の環境で確認をしてみます。どうもありがとうございます。
回答1件
あなたの回答
tips
プレビュー