Jquery xml标签是否存在

Jquery xml tag is exist or not

本文关键字:存在 是否 标签 xml Jquery      更新时间:2023-09-26

我正在使用Jquery并试图找出下面的标签是否存在

if(feed.mediaGroups[0].contents[0].thumbnails[0].url !== 'undefined') {
                        thumb = feed.mediaGroups[0].contents[0].thumbnails[0].url;
                    } 

但是这个崩溃了说

TypeError: feed.mediaGroups is undefined

你知道怎样才能把它修好吗?

谢谢

你在检查一个属性,但很明显feed对象甚至没有mediaGroups属性,所以你可能应该从那里开始

if(
    'mediaGroups' in feed &&
    Array.isArray(feed.mediaGroups) &&
    'contents' in feed.mediaGroups[0] &&
    Array.isArray(feed.mediaGroups[0].contents) &&
    'thumbnails' in feed.mediaGroups[0].contents[0] &&
    Array.isArray(feed.mediaGroups[0].contents[0].thumbnails) &&
    'url' in feed.mediaGroups[0].contents[0].thumbnails[0] &&
    typeof feed.mediaGroups[0].contents[0].thumbnails[0].url !== 'undefined'
) {
    thumb = feed.mediaGroups[0].contents[0].thumbnails[0].url;
}

你可以看到这是多么乏味,我们甚至没有检查所有内容,我们仍然可以检查数组是否在索引0处有一个值,所以知道会发生什么是非常有用的,你不应该这样检查每个属性