我在脚本中有这个代码。 我知道结果是什么,但不知道它到底在做什么。
var str = ',' + id + ',' + name;
names = names.map(function(value) {
if( value.indexOf(id) > -1 ) {
return (value.indexOf('add') === 0 ? 'add' : 'edit') + str;
}
return value;
});
if ( ($.inArray('edit' + str, names) == -1 && $.inArray('add' + str, names) == -1) ) {
names.push('edit' + str)
}
给我这个剧本的人没有评论。
似乎是str
不在数组中添加它,如果它是更新它。
任何人都可以简要概述它实际上做了什么。
由于
答案 0 :(得分:1)
看起来它在'edit'+str
数组中专门寻找'add'+str
和names
。如果两者都不存在,则将'edit'+str
添加到names
数组。
var str = ',' + id + ',' + name;
names = names.map(function(value) {
if( value.indexOf(id) > -1 ) { //if id is in value
return (value.indexOf('add') === 0 ? 'add' : 'edit') + str; //if value starts with 'add' then return 'add'+str, otherwise return 'edit'+str
}
return value; //if id not in value, return value
});
if ( ($.inArray('edit' + str, names) == -1 && $.inArray('add' + str, names) == -1) ) { //If 'edit'+str is not in the names array AND 'add'+str is not in the names array
names.push('edit' + str) //add 'edit'+str to the names array
}