如果这种事情已被涵盖,我道歉,但我找不到足够接近我想要的东西。
我有很长的属性列表。我想把它分解成一个二维数组。
这是我列表中每个“对象”的格式; [[name] [attr1] [attr2] [attr3]]等等。 attr的数量各不相同,但每个对象都以双括号开始和结束。
因此,我想将每个对象存储为数组条目,然后在该数组条目中,将单个大括号部分分解为另一个数组。
这是我到目前为止所拥有的;
$(document).ready(function(){
var objGet = $(".HIDE").text().trim().split(/\[\[(.*?)\]\]/g);
$.each(objGet, function() {
var objStat = objGet.split(/\[(.)\]/g);
});
});
我知道我做的第二级部分完全错了。我知道如何分解基本列表,但不会将数组条目分解为另一个数组。我也不知道如何输出对象及其统计信息。理想情况下,我希望输出采用这种html格式:
obj1 = <p><span>name</span><span>attr1</span><span>attr2</span></p>
obj2 = <p><span>name</span><span>attr1</span><span>attr2</span></p>
etc
任何帮助都将不胜感激。
答案 0 :(得分:0)
我想你想要像
这样的东西var parsed = $.map(objGet, function(val) {
return val.split(/\[(.)\]/g);
});
用于第二个功能。 Map返回一个新数组,其中包含应用于每个项的函数的结果,因此这应该有效。