函数中的javascript增量索引
我只是想弄清楚如何在函数中创建索引,这样我就可以跟踪它生成的项,我不知道该怎么做,似乎我应该知道这一点函数中的javascript增量索引,javascript,jquery,indexing,Javascript,Jquery,Indexing,我只是想弄清楚如何在函数中创建索引,这样我就可以跟踪它生成的项,我不知道该怎么做,似乎我应该知道这一点 addLocation(options,location) funciton addLocation(options,location){ $('#list').append('<li class="location"><div>'+location.label+'</div>'+ '<input type="hi
addLocation(options,location)
funciton addLocation(options,location){
$('#list').append('<li class="location"><div>'+location.label+'</div>'+
'<input type="hidden" name="location['+x+'][lat]" value="'+location.lat+'" />'+
'<input type="hidden" name="location['+x+'][lon]" value="'+location.lon+'" />'+
'<input type="hidden" name="location['+x+'][loc]" value="'+location.loc+'" />'+
'<input type="hidden" name="location['+x+'][label]" value="'+location.label+'" />'+
'</li>');
}
addLocation(选项,位置)
函数addLocation(选项,位置){
$(“#list”).append(“”+location.label+”+
''+
''+
''+
''+
“ ”);
}
现在,通常你有一个forloop来帮助你跟踪事物,但是在这个例子中,我没有在循环中附加项,我一直得到一个错误,在undefined中表示x
感谢你能给予的任何帮助
谢谢
Mike声明x,因为在上面的代码中它没有定义
var x = 0;
声明x,因为在上面的代码中没有定义它
var x = 0;
由于您希望每次调用函数时,
x
都应该递增,因此可以将x
存储在闭包中,例如:
var addLocation = (function (){
var x = 0; // store x
return function (options,location) {
x++; // increment x
$('#list').append('<li class="location"><div>'+location.label+'</div>'+
'<input type="hidden" name="location['+x+'][lat]" value="'+location.lat+'" />'+
'<input type="hidden" name="location['+x+'][lon]" value="'+location.lon+'" />'+
'<input type="hidden" name="location['+x+'][loc]" value="'+location.loc+'" />'+
'<input type="hidden" name="location['+x+'][label]" value="'+location.label+'" />'+
'</li>');
};
})();
var addLocation=(函数(){
var x=0;//存储x
返回功能(选项、位置){
x++;//增量x
$(“#list”).append(“”+location.label+”+
''+
''+
''+
''+
“ ”);
};
})();
由于您希望每次调用函数时,x
都应该递增,因此您可以将x
存储在闭包中,例如:
var addLocation = (function (){
var x = 0; // store x
return function (options,location) {
x++; // increment x
$('#list').append('<li class="location"><div>'+location.label+'</div>'+
'<input type="hidden" name="location['+x+'][lat]" value="'+location.lat+'" />'+
'<input type="hidden" name="location['+x+'][lon]" value="'+location.lon+'" />'+
'<input type="hidden" name="location['+x+'][loc]" value="'+location.loc+'" />'+
'<input type="hidden" name="location['+x+'][label]" value="'+location.label+'" />'+
'</li>');
};
})();
var addLocation=(函数(){
var x=0;//存储x
返回功能(选项、位置){
x++;//增量x
$(“#list”).append(“”+location.label+”+
''+
''+
''+
''+
“ ”);
};
})();
在这个例子中,x应该是什么值?@Zack values应该是整数@vicatcu我还没有定义x,因为我不知道如何在不将x全部设为0的情况下进行计算time@mcgrailm,您的意思是每次调用函数时,x
应该递增吗?@mcgrailm,现在足够清楚了,我发布了一个答案…@CMS不是真的我不知道现在如何调用函数在这个例子中x应该是什么值?@Zack值应该是一个整数@vicatcu我还没有定义x,因为我不知道如何在没有将x全部设为0的情况下调用它time@mcgrailm,您的意思是每次调用函数时,x
应该递增吗?@mcgrailm,现在足够清楚了,我发布了一个答案…@CMS不是真的,我不确定现在如何调用该函数。您必须将其定义为我刚刚输入的0,因为我不知道您试图导出的值。你用什么作为索引的基础,看起来zincorp对用什么作为索引的基础有着正确的想法。你必须把它定义为我刚才用0表示的东西,因为我不知道你想得到什么值。你用什么作为索引的基础,看起来zincorp对什么作为索引的基础有正确的想法。那么我用变量调用函数?参数将如何进入函数?抱歉,以前从未见过这样做。只需调用addLocation(选项,位置)
。闭包中有一个没有参数的匿名函数,带有两个参数的内部函数是分配给addLocation
的。那么我通过变量调用函数?参数将如何进入函数?抱歉,以前从未见过这样做。只需调用addLocation(选项,位置)
。没有参数的匿名函数用于闭包,带有两个参数的内部函数是分配给addLocation
的函数。如果项目被删除,这仍然可以解释,只要你删除
'sok,那么假设我有4个li的x应该是3,然后我添加第五个x到4,我删除li3,如果项目被删除,我的x保持在4,这应该仍然可以解释,只要你删除
'sok,那么假设我有4个li的x应该是3,然后我添加第五个x到4,我删除li3,我的x保持在4