1. ホーム
  2. javascript

[解決済み] JavaScriptでのarray.select()

2022-03-10 16:42:10

質問

JavaScriptはRubyと同じような機能を持っているのでしょうか?

array.select {|x| x > 3}

のようなものです。

array.select(function(x) { if (x > 3)  return true})

解決方法は?

あるんです。 Array.filter() :

var numbers = [1, 2, 3, 4, 5];
var filtered = numbers.filter(function(x) { return x > 3; });

// As a JavaScript 1.8 expression closure
filtered = numbers.filter(function(x) x > 3);

なお Array.filter() は標準的な ECMAScript の また、ES5 より古い ECMAScript の仕様には記載されていません (Yi Jiang と jAndy に感謝します)。そのため、JScript (on MSIE) のような他の ECMAScript の方言ではサポートされていないかもしれません。

2020年11月更新 : Array.filterは がサポートされました。 すべての主要なブラウザで