今日はLodash..likeの新機能です。ここでは、キーでオブジェクトをフィルタリングするのがとても簡単な記事を見つけました。 SO Postオブジェクトキーの値を取得するためのLodashハンドラ
私がやっていることは似ていますが、私はその価値を求めています。私のアプリは、飲み物を作るための複数のオプションをユーザーに提供します。最低限、1つのオプションを選択する必要があります。彼らがオプションを選択しなかったとき、私は彼らに、基本的なif/elseが私が行っているものでなければならないことを警告したいと思います。
マイオブジェクト:ユーザーが何も選択しない場合
var pref = {
'strong': $('#strong').find(':selected').val() === 'Yes',
'salty': $('#salty').find(':selected').val() === 'Yes',
'bitter': $('#bitter').find(':selected').val() === 'Yes',
'sweet': $('#sweet').find(':selected').val() === 'Yes',
'fruity': $('#fruity').find(':selected').val() === 'Yes'
};
すべてのキーのための私の値はfalse
を読み込みます。現時点では
私の検証コードは:
function validateInputs(pref) {
var emptyFields = _.filter(pref, function(value, key) {
if (emptyFields.key === false) {
alert('You must select at least one option.');
} else {
// run program
randomDrink = myBartender.createDrink(pref);
}
});
}
だから私は言った値でフィルタリングすることができるようにしたい:
if(all keys are false) {alert} else {run the program}
は私のキーの値を返すハンドラがありますLoDashのために?私がしようとしているものに目障りなエラーがある場合は、私に知らせてください。私はこのようなオブジェクトをフィルタリングしようとしたことがないので、学習が進行中です!
どうもありがとうございます!私は右ハンドラを見つけるためにドキュメントを読んできました。私は魅力のように働く助けに感謝します! – rockchalkwushock