如何检索数组对象内的文本?

时间:2011-01-19 05:34:59

标签: html arrays extjs sencha-touch

我有这种格式的数组:

points.push(
{text: '<span style="font-weight: bold;font-size:25px;">hi</span>'},
{text: '<span style="font-weight: bold;font-size:25px;">hello</span>'},
{text: '<span style="font-weight: bold;font-size:25px;">call</span>'},
{text: '<span style="font-weight: bold;font-size:25px;">crow</span>'});

当我使用alert(points[1]);时我明显得到[object object],因为周围有一些HTML代码......

任何人都可以告诉我如何检索此数组中的文本。 我需要输出只有“hi”或“hello”或“call”或“c​​row”

谢谢。

2 个答案:

答案 0 :(得分:1)

正确的语法是points[1].text

这不是因为有html代码,javascript没有查看内容。对于每个推送元素,您使用的是javascript对象文字{ property : "value" },这意味着您推送的每个对象。您必须通过以点符号object.property为其指定值来引用您实例化的属性。如果你不想使用json,请改变你的推送语句。

points.push(
'<span style="font-weight: bold;font-size:25px;">hi</span>',
'<span style="font-weight: bold;font-size:25px;">hello</span>',
'<span style="font-weight: bold;font-size:25px;">call</span>',
'<span style="font-weight: bold;font-size:25px;">crow</span>');

如果你使用这种类型的语法,(没有json {})你只需要一个字符串数组,你可以像你原先想要的那样进行判断。

另外,要明白它并不关心这些字符串值中包含的内容,它会像处理任何其他字符串一样对待它们。

答案 1 :(得分:0)

alert(points[1].text)会为您提供文字:'<span style="font-weight: bold;font-size:25px;">hi</span>'。之后你必须提取适当的内容。