ドロップダウンの値を条件ごとにカウント

お世話になっております。

タイトルの件について、ドロップダウンフィールドに登録された値を

値ごとにカウント(※集計)したいと考えております。

現在、下記コードで設定すると「invalid ‘in’ operand」とエラーが返ってきます。

resp.records.filter(function(data){ return data.ドロップダウン.value.length in (“選択1”);}).length;

in 演算子は文字検索が出来ないようなので、別で設定できる関数などございますでしょうか。

お手数でございますが、ご教授いただければ幸いでございます。

よろしくお願いいたします。

文字列の比較なら === で出来ます。

resp.records.filter(function(data){ return data.ドロップダウン.value === “選択1”; }).length;

 

rex0220様

ご返信ありがとうございます。

ご教授いただいたように設定し、集計、表示が出来ました。

ありがとうございます。

rex0220様

申し訳ございません。

本件、質問でもう一つ質問があるのですが、下記のようにコードを設定した場合、id4の合計の値が取れないのですが、

合計をとる方法はありますでしょうか。

var id1 = resp.records.filter(function(data){ return data.ドロップダウン.value === "選択1"; }).length;
var id2 = resp.records.filter(function(data){ return data.ドロップダウン.value === "選択2"; }).length;
var id3 = resp.records.filter(function(data){ return data.ドロップダウン.value === "選択3"; }).length;
var id4 = [id1 + id2 + id3]; //選択1~3までの合計

度々、お手数でございますが、ご確認お願い致します。

度々申し訳ございません。

下記コードを追記し、問題解決しました。

お騒がせしてすみません。

var sum = function(arr, fn) {
                if (fn) {
                    return sum(arr.map(fn));
                }
                else {
                    return arr.reduce(function(prev, current, i, arr) {
                            return prev+current;
                    });
                }
            };

今後ともよろしくお願いいたします。