我有一个数组,我在其中添加其他数组的不同类别的项目:
例如,2个数组国家/地区和语言:
countries = ['US', 'UK', 'Canada'];
languages = ['English', 'French', 'German'];
我用它来填充另一个数组:
items = ['US', 'French'];
在项目中,我只能有一个来自国家/地区和语言的项目,因此每次我要在项目中添加国家/地区时,我必须删除已在项目中的其他国家/地区。
现在,我正在进行的方式是循环浏览国家和语言以检查项目是否在项目中,但我确信有一种更优雅的方式来执行此操作,例如使用underscore.js:
for ( var i = 0; i < country.length; i ++){
if (items.indexOf(country[i]) > -1){
items.splice($.inArray(country[i], items),1)
}
}
有没有人有一个简单的解决方案?
最佳
答案 0 :(得分:2)
不确定我是否完全理解。为什么不使用object而不是array?
var items = {'country': 'US', 'language': 'English'};
然后,当您通过分配items.country = 'UK';
向项目添加其他国家/地区时,之前的国家/地区将被覆盖,因此您最终只能使用来自国家/地区的一个项目和来自项目对象中的语言的一个项目。