-1

次のコードを検討してください。

    var friends = {
    bill: {
        firstName: "Bill",
        lastName:"William",
        number: "212-555-1212",
        address: ['Main Street', 'Yakama', 'WA','90012']
    },
    steve: {
        firstName: "Steve",
        lastName: "Steven",
        number: "818-555-1212",
        address: ['Any Street', 'Eureka', 'CA','90013']
    },
    betty: {
        firstName: "Betty",
        lastName: "Draper",
        number: "503-555-1212",
        address: ['Your Street', 'Madison', 'WI','90014']
    }
};

var search = function(name){
    for(var prop in friends){
        if(friends[prop].firstName === name){
           console.log(friends[prop]);
           return friends[prop];
        }
    }
};

私の質問は、特にこの部分に関するものです。

if(friends[prop].firstName === name)

[prop] を囲む括弧の使用法と、この場合に括弧が必要な理由を理解したいと思います。私はドット構文表記法には精通していますが、これらのブラケットの使用法には精通していません。

私の質問が重複しているかどうかに関して: 私の前に提供され、同じ質問をする質問は、実際には好みの問題です。つまり、ドット構文とブラケット表記を使用する利点は何ですか。私の質問は本質的にはるかに基本的なものであり、なぜそれを使用するのか、より具体的には、私が示した特定の例でなぜそれが必要なのかを尋ねます。さらに、私のより基本的な質問がその他の投稿で答えられているとは思いません。

私を嘲笑し、私の質問に反対票を投じ、私を怠け者と呼び、ウェブを検索したり、頭を右に向けたりしなかった人への言葉: 私は答えを求めてウェブを検索しましたが、さまざまな質問のあるウェブページがたくさんあります関連していますが、私の質問に正確に答えているわけではありません。さらに、適切な語句やキーワードで Web を検索しないと、求めている答えが見つからない可能性があります。私は JS のこの特定の構文に慣れていないので、正しいフレーズやキーワードで検索していなかったのかもしれません。

肝心なのは、プログラマーとしての自分自身をより良くするために真剣に質問したということです。ここでの私の唯一の失敗が、学習しようとしたり、すべてを知らなかったりすることをプログラミングの重大な罪だと感じている人がいる場合、ここでコメントした特定の個人が狭量と傲慢に問題を抱えていることは私の問題ではありません.

そうは言っても、私の質問に誠意を持って答えようとしてくれた方々には本当に感謝しています。

4

4 に答える 4

5

括弧を使用すると、動的にアクセスするプロパティを定義できます。ドット表記を使用すると、コード内のプロパティの名前を知る必要がありますが、括弧を使用すると実行時に決定できます。

于 2013-04-05T23:21:56.370 に答える