0

以下のような配列を持つ関数を設計し、if ステートメントを使用して、以下の配列内のいずれかのカテゴリで型が以下と等しいかどうかを確認し、その関連カテゴリ コードを返すことは可能ですか?

例:

function CheckCategory(type) {

array = 

[NOTES, CAT-A],
[BOOKS, CAT-B],
[MUSIC, CAT-C],
[SOFTWARE, CAT-D]

if (type == "NOTES") { return "CAT-A" }


}
4

3 に答える 3

0

array変数を 2 次元配列 (配列の配列) として宣言できます。

function checkCategory(type) {
    var array = [
        ['NOTES', 'CAT-A'],
        ['BOOKS', 'CAT-B'],
        ['MUSIC', 'CAT-C'],
        ['SOFTWARE', 'CAT-D']
    ];

    // Then, simply loop over your array and check for the type
    for (var i = 0; i < array.length; i++) {

        if (type == array[i][0]) {

            // It will return the CAT-X of the matching type
            return array[i][1];
        }
    }
}

また、変数をオブジェクトとして宣言し、typeプロパティの値を返すこともできます。

function checkCategory(type) {
    var values = {
        NOTES: 'CAT-A',
        BOOKS: 'CAT-B',
        MUSIC: 'CAT-C',
        SOFTWARE: 'CAT-D'
    }

    return values[type];
}
于 2013-11-07T18:31:57.137 に答える
0
function CheckCategory(type) {
    var data = [
        ['NOTES', 'CAT-A'],
        ['BOOKS', 'CAT-B'],
        ['MUSIC', 'CAT-C'],
        ['SOFTWARE', 'CAT-D']
    ];

    for( i = 0; i < data.length; i++) {
        if (data[i][0] == type) {
            return data[i][1];   
        }
    }

    return "Not found";
}

http://jsfiddle.net/Mansfield/5s8wr/2/

于 2013-11-07T18:27:52.433 に答える