从嵌套字典中过滤字符串(javascript)

时间:2020-05-05 05:52:21

标签: javascript

我有嵌套的字典,我试图在其中过滤出svgs的字符串。这是我的玩具版本。

dat = {"objects": [{"svg": "abcd"}, 
  {"svg": "efgh"}, 
  {"svg": "ijkl"}, 
  {"svg": "mnop"}, 
  {"svg": "qrst"}]}

我不确定filter是否正确,但是我目前正在尝试这样的操作:

var allSVGs = _.filter(dat, {'objects': 'svg'});
console.log(allSVGs, 'allSVGs');

我希望最后得到一个字符串数组:

allSVGs = ["abcd", "efgh", "ijkl", "mnop", "qrst"]

任何帮助或建议都将不胜感激!谢谢。

1 个答案:

答案 0 :(得分:1)

您想要的[{"abcd"}, {"efgh"}, {"ijkl"}, {"mnop"}, {"qrst"}]结构不正确。对于对象{},应该有键和值对。

但是您可以尝试

var data = { "objects": [
      {"svg": "abcd"}, 
      {"svg": "efgh"}, 
      {"svg": "ijkl"}, 
      {"svg": "mnop"}, 
      {"svg": "qrst"}
    ]
};
    
var result = data.objects.map(el => el.svg);
console.log(result);

这将导致["abcd", "efgh", "ijkl", "mnop", "qrst"]