2016-04-25 4 views
1

を返します実行可能な解決策を考案するのに十分なほど強力ではありません。は、Idは私がいるという事実を除いて、以下の次のコードの構造に類似しているjavascript関数を思い付くことができるようにしたい「、私はあなたの助けが必要</p> <p>配列を検索し、値

私は与えられた値が、その後、その値を使用して、配列を検索し、(の右側の値を:コロン文字)値短い名前を返す入力できるようにしたいと思い

function test() { 

var filenames = [ 
     "REQUEST FOR INFO":"REQI", 
     "MEDIA CALL":"MC", 
     "ISSUES NOTE":"ISN" 
    ] 

EX1.) 

    var value_to_search_for = "REQUEST FOR INFO (ALPHA)" 

    if (value_to_search_for matches the value in the array filenames) then { 

     return "REQI" 

    } 

EX.2) 
    var value_to_search_for = "MEDIA CALL" 

    if (value_to_search_for matches value in the array filenames) then { 

     return "MC" 

    } 

} 
オブジェクトにそれを変更することができ、その後、あなたはまた、ARにそれを変更することができ、この

var filenames = { 
 
    "REQUEST FOR INFO": "REQI", 
 
    "MEDIA CALL": "MC", 
 
    "ISSUES NOTE": "ISN" 
 
}; 
 

 
var getValue = function(val, obj) { 
 
    if (val in obj) return obj[val]; 
 
} 
 

 
console.log(getValue('ISSUES NOTE', filenames));

を行うことができます

+0

を行うことができますあなたがオブジェクトを知っていますか? – Chiru

+2

プロパティを持つオブジェクトのように見えます。配列でなければならない場合、配列が不正です。 –

答えて

1

オブジェクトの線と、あなたはこの

var filenames = [ 
 
    {"REQUEST FOR INFO": "REQI"}, 
 
    {"MEDIA CALL": "MC"}, 
 
    {"ISSUES NOTE": "ISN"} 
 
]; 
 

 
var getValue = function(val, array) { 
 
    array.forEach(function(el) { 
 
    for (prop in el) { 
 
     if (prop == val) console.log(el[prop]); 
 
    } 
 
    }); 
 
} 
 

 
getValue('MEDIA CALL', filenames);

+0

ありがとうNenad、このコードは、文字列の末尾にバックセットに値がない場合、警告(getValue( 'REFEST FOR INFO(ABC)'、ファイル名));定義されていません。私はあなたがこれで行くところが好きです。これまでにこれまで行ってきた努力の非常に感謝しています:) – BobbyJones

+0

あなたは大歓迎です。ここで完全に一致する必要があります。一致しないと値が一致しません。しかし、これはこのデータ構造を反復する方法です。 –

関連する問題

 関連する問題