我尝试使用redux存储数据并使用全局状态的数据。问题是我不明白为什么第三个console.log()无法正常工作。
const results = this.props.popMovies
/* work */ console.log(this.props.popMovies[0].title)
for (var i = 0; i < this.props.popMovies.length; i++)
/* work */ console.log(this.props.popMovies[i].title);
/* dosen't work */ console.log(...results.title)
如果有人可以向我解释原因,那么它可以帮助我。 谢谢。
答案 0 :(得分:2)
因为 System.Xml.Linq.XElement xml = System.Xml.Linq.XElement.Parse("<response><point><x>12557735.513928</x><y>5500887.2196169</y><projection>EPSG::29873</projection></point></response>");
var valueX = xml.Descendants().SingleOrDefault(x => x.Name.LocalName == "x")?.Value;
var valueY = xml.Descendants().SingleOrDefault(x => x.Name.LocalName == "y")?.Value;
Console.WriteLine("TEST");
Console.WriteLine("Timb East" + valueX);
Console.WriteLine("Timb North" + valueY);
是results
,并且没有任何标题属性array
。所以你实际上在做
title
首先,您可以使用map()
排列所有标题,然后将其传递给console.log(...undefined)
console.log
这是使用演示阵列的演示。
console.log(...results.map(x => x.title))
答案 1 :(得分:1)
这是因为访问title
数组的results
属性要优先于...results.title
上的传播算子,这基本上意味着上述代码正在尝试传播{{1} }不存在的对象/数组。
尝试以下方法:
results.title
答案 2 :(得分:0)
写const result = [{title:"title1"},{title:"title2"},{title:"title3"}]
console.log(...result.map(x => x.title))
意味着您正在尝试传播console.log(...results.title)
,但是result.title
作为title
的属性不存在,而是存在于结果数组中的对象中
在传播标题之前,您需要先检索标题。为此,您可以对地图使用传播语法
result