以下是我如何获取父母内部div的所有内容
var ids = $('#layers div').map(function(index) {
return $(this).attr('id');
});
但是当我这样做时
ids.reverse();
令我惊讶的是它显示了一个错误(Uncaught TypeError: ids.reverse is not a function
),尽管反向是本机javascript数组函数。
所以我很快就怀疑它不是一个数组对象,并查看了Jquery map()函数文档,它说
将数组或对象中的所有项目转换为新的项目数组。
可能是什么问题?
答案 0 :(得分:4)
您应该使用.get()
和.map()
来获取原生数组。
由于返回值是包含数组的jQuery对象,因此在结果上调用
.get()
以使用基本数组非常常见。
var ids = $('#layers div').map(function(index) {
return $(this).attr('id');
}).get();
var ids = $('div').map(function(index) {
return $(this).attr('id');
}).get();
console.log(ids.reverse());

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="1"></div>
<div id="2"></div>
&#13;