0

JavaScript を使用して RSS フィードを解析しようとしています。フィードに複数のカテゴリがある場合があるため、アイテム 2 に何かあるかどうかを確認したい場合があります。確認しないとエラーが発生し、次のコードを使用して確認するとエラーが発生します。(変数が定義されているかどうかのテストとして、単純に var cat2 を設定しています)。

var catItem = item.getElementsByTagName("category").item(2).text;

        if (typeof catItem != 'undefined'){
            var cat2 = "1"
        }
        else{

            var cat2 = "2"      
        }
4

4 に答える 4

0
var catItem = document.getElementsByTagName("category")[2];
var cat2 = "2";

if (typeof catItem !== 'undefined') {
    cat2 = "1";
}

三項演算を使用してこれを短縮することもできます。

var catItem = document.getElementsByTagName("category")[2];
var cat2 = catItem ? "2" : "1";
于 2011-04-04T16:10:25.977 に答える
0

コードは、位置 2 の範囲に要素がある場合にのみ機能します。

なぜそうしないのですか:

if(item.getElementsByTagName("category").length > 1) {
于 2011-04-04T16:10:51.343 に答える
0

次のようなことを試すことができます:

var catItem = item.getElementsByTagName("category");
if(catItem[1]) {
   ...
}
else {
   ...
}
于 2011-04-04T16:11:04.150 に答える