下の「obj」から、
allowがnullなら
{ color:'enable', shape:'disable' } を取得
allowが 'enable' なら
{ color:'enable' } を取得
みたいな感じで取得したいです。
nullの方はできてますが、allowでの引数指定がうまくいかなくって…どうぞお手伝い頂けましたら幸いです。
まずgrep()というのを調べて下記を試しましたが、これじゃダメ。
function hoo( name, allow=null ){ const obj = { apple : { color:'enable', shape:'disable' }, melon : { color:'enable', shape:'enable' } }; let result; if( allow==null ){ result = obj[name]; } else{ result = $.grep(obj[name], function (e) { return e == allow; }); } return result; } var result1 = hoo('apple'); console.log(result1); var result2 = hoo('apple', 'enable'); console.log(result2);
さらにmap()というのも試しましたがこれもダメでした。
function hoo( name, allow=null ){ const obj = { apple : { color:'enable', shape:'disable' }, melon : { color:'enable', shape:'enable' } }; let result; if( allow==null ){ result = obj[name]; } else{ result = $.map(obj[name], function(value, index) { if( value==allow ){ return value; } }); } return result; } var result1 = hoo('apple'); console.log(result1); var result2 = hoo('apple', 'enable'); console.log(result2);
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。