我想创建一个这样的结构:
[{title:'Imágenes', extensions:'jpg,gif,png'}, {title:'Todos', extensions:'*'}]
但我需要从字符串创建它,以这种方式(在“js+jquery+php 罕见模式”中):
items = 'Imágenes jpg,gif,png|Todos *'.split('|').each(function() {
list(title, ext) = explode(' ', $this);
filters[] = array('title' => title, 'ext' => ext);
});
我发现了这样的结构:
var theStatus = new Object();
function testIt() {
theStatus.Home = 'mouseover';
theStatus['Place'] = 'click';
for (var i in theStatus)
{
alert('theStatus[\''+i+'\'] is ' + theStatus[i])
}
}
以及喜欢:
$.alerts = {
verticalOffset: -75,
horizontalOffset: 0,
repositionOnResize: true,
overlayOpacity: .01,
overlayColor: '#FFF'
}
但我不能做任何实用的事情。
提前致谢。
最佳答案
这就是我要做的:
items = 'Imágenes jpg,gif,png|Todos *'.split("|").map(function (itemString) {
var parts = itemString.split(" ");
return { title: parts[0], extensions: parts[1] };
});
或者,如果您使用 jQuery 并且需要支持旧版浏览器,您也可以这样做:
items = $.map('Imágenes jpg,gif,png|Todos *'.split("|"), function () {
var parts = this.split(" ");
return { title: parts[0], extensions: parts[1] };
});
关于javascript - 如何创建复杂的 JavaScript 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7331904/