-3

我是 JS 新手,我进行了一些调查,但找不到解决方案。如果它是重复的,请原谅我。

上下文:我有数千个对象,其中大多数具有相同的属性。在 javascript 中,我获取对象的所有属性并将它们格式化为在 html 中显示。由于某些对象没有所有属性,因此我得到未定义的值。为了解决这个问题,我写了这段代码:

var twitter = $.map(tweets, function(obj, index) {
                  return {                      
                     Format: ((typeof obj.VideographyFeatures.Format === "undefined") ? "N/A" : obj.VideographyFeatures.Format)
                  };
               });

但它不起作用。对于没有“VideographyFeatures”属性的对象,我仍然收到以下错误。

“未捕获的类型错误:无法读取未定义的属性‘格式’”。

我的目标是获得:

{
Format: "N/A"
};
4

1 回答 1

1

如果obj.VideographyFeatures未定义,则无法将其Format属性传递给typeof表达式。

你需要检查typeof obj.VideographyFeatures

于 2013-01-27T18:46:17.987 回答