我正在制作下面的演示。如何将年龄属性中的所有数据加载到一个数组中,使其看起来像这样?
out = [48,14,139,49,15,135,51,15,140,49,15,135,51,15,140,52,16,141]
let agesindx =[];
$(".box").each(function(){
//agesindx.push($(this).data('ages').split(','));
agesindx.push($(this).data('ages'));
});
console.log(agesindx);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="box" data-ages="[48, 14, 139]"></div>
<div class="box" data-ages="[49,15,135],[51,15,140]"></div>
<div class="box" data-ages="[49,15,135],[51,15,140],[52,16,141]"></div>
最佳答案
您可以使用 JSON.parse
从字符串中解析您的数组。
然后你会在数组中得到一个数组等等。所以最后你可以做 join
和 split
这会给你一个单一的数组。
let agesindx =[];
$(".box").each(function(){
//agesindx.push($(this).data('ages').split(','));
let x = JSON.parse('['+$(this).data('ages')+']');
// console.log(JSON.parse('['+$(this).data('ages')+']'));
agesindx.push(x);
});
console.log(agesindx.join().split(',') );
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="box" data-ages="[48, 14, 139]"></div>
<div class="box" data-ages="[49,15,135],[51,15,140]"></div>
<div class="box" data-ages="[49,15,135],[51,15,140],[52,16,141]"></div>
关于javascript - 将复杂数据属性插入一个数组的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55683761/