作为表达式的 Javascript 对象属性值不起作用

Javascript object property value as expression does not work

本文关键字:属性 不起作用 对象 Javascript 表达式      更新时间:2023-09-26

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

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

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

但它不起作用。对于没有"摄像功能"属性的对象,我仍然收到以下错误。

"未捕获的类型错误:无法读取未定义的属性'格式'"。

我的目标是获得:

{
Format: "N/A"
};

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

您需要检查typeof obj.VideographyFeatures.