1

我运行了以下 jquery 命令:

x=$(".container h3")

并得到了这个回复:

[<h3>​A</h3>​, <h3>​B​&lt;/h3>​, <h3>​C​&lt;/h3>​, <h3>​D​&lt;/h3>​, <h3>​E</h3>​]

我想将数组中的每个元素都转换为字符串,因此最终结果如下所示:

["A", "B", "C", "D", "E"]

问题是我无法将每个 jquery 响应对象转换为字符串元素。

我试图通过以下方式将每个对象转换为字符串:

for(var i=0; i < x.length; ++i) {console.log( String(x[i]) )}

但我得到了这个:

[object HTMLHeadingElement]
[object HTMLHeadingElement]
[object HTMLHeadingElement]
[object HTMLHeadingElement]
[object HTMLHeadingElement]

是否有将每个对象转换为字符串元素的直接方法?

4

2 回答 2

7

为什么不使用.map()方法?

var x = $(".container h3").map(function(){
    return $(this).text();
}).get(); // ["A", "B", "C", "D", "E"]
于 2013-08-31T16:57:11.490 回答
1
var x = [];
$(".container h3").each(function(){
    x.push($(this).text());
});
于 2013-08-31T17:25:35.003 回答