Javascript 简单++;不';不要增加数量
我可能错过了一些非常简单的东西,但是,我确实错过了。我找不到它。我的代码如下:Javascript 简单++;不';不要增加数量,javascript,jquery,Javascript,Jquery,我可能错过了一些非常简单的东西,但是,我确实错过了。我找不到它。我的代码如下: var count = 0; $(document).on('click', button, function() { var originalLink = button.attr('href'), elems, count = parseInt(originalLink.match(/\d+$/)[0]), c
var count = 0;
$(document).on('click', button, function() {
var originalLink = button.attr('href'),
elems,
count = parseInt(originalLink.match(/\d+$/)[0]),
cleanlink = originalLink.replace(/[0-9]/g, ''),
link = cleanlink+''+count;
$.get(link, function(data) {
elems = $(data).find(elements);
$(elems).hide();
$(elems).appendTo(container);
}).done(function() {
count = count++;
var offsetButton = $(button).offset().top;
$('html, body').animate({
scrollTop: offsetButton
},500);
if($('.masonry').length) {
container.masonry('reload');
container.masonry('reloadItems');
};
$(elems).fadeIn();
});
alert(count);
return false;
});
它应该随着每次单击而增加计数。但事实并非如此。我的错在哪里?更换这个
count = count++;
借
做count++代码>通过它自己的等价物执行count=count+1代码>
执行count=count++
与count=count相同
因为count++在递增之前返回count的值
通过这样做,您还可以在每次单击时调整计数count=parseInt(originalLink.match(/\d+$/)[0]),
你的密码被修正了
var count = 0;
$(document).on('click', button, function() {
var originalLink = button.attr('href'),
elems,
cleanlink = originalLink.replace(/[0-9]/g, ''),
link = cleanlink+''+count;
$.get(link, function(data) {
elems = $(data).find(elements);
$(elems).hide();
$(elems).appendTo(container);
}).done(function() {
count++;
var offsetButton = $(button).offset().top;
$('html, body').animate({
scrollTop: offsetButton
},500);
if($('.masonry').length) {
container.masonry('reload');
container.masonry('reloadItems');
};
$(elems).fadeIn();
alert(count);
});
return false;
});
替换这个
count = count++;
借
做count++代码>通过它自己的等价物执行count=count+1代码>
执行count=count++
与count=count相同
因为count++在递增之前返回count的值
通过这样做,您还可以在每次单击时调整计数count=parseInt(originalLink.match(/\d+$/)[0]),
你的密码被修正了
var count = 0;
$(document).on('click', button, function() {
var originalLink = button.attr('href'),
elems,
cleanlink = originalLink.replace(/[0-9]/g, ''),
link = cleanlink+''+count;
$.get(link, function(data) {
elems = $(data).find(elements);
$(elems).hide();
$(elems).appendTo(container);
}).done(function() {
count++;
var offsetButton = $(button).offset().top;
$('html, body').animate({
scrollTop: offsetButton
},500);
if($('.masonry').length) {
container.masonry('reload');
container.masonry('reloadItems');
};
$(elems).fadeIn();
alert(count);
});
return false;
});
当++
是后缀时,它在递增变量之前按原样返回其值
您应该简单地使用它,而不需要显式赋值
count++;
或者,如果++
是一个前缀,它将工作(因为它将首先返回值)。但是,对于其他开发人员来说,这看起来很奇怪(因为显式赋值是多余的)。当++
是后缀时,它返回的值与递增变量之前的值相同
您应该简单地使用它,而不需要显式赋值
count++;
或者,如果++
是一个前缀,它将工作(因为它将首先返回值)。但是,对于其他开发人员来说,这看起来很奇怪(因为显式分配是多余的)。解释:
i=i++; //post increment operator
i=0 // intialization
i=i++ // stores value of i and then increments
i=0 //current value of i;
试试这个:
i=++i; or i=i+1
说明:
i=i++; //post increment operator
i=0 // intialization
i=i++ // stores value of i and then increments
i=0 //current value of i;
试试这个:
i=++i; or i=i+1
正如其他人所提到的:(3起案件)
count=count++
返回当前值,然后递增该值李>
count=++count
将返回递增的数字
在哪里做count++代码>只会增加数字
正如其他人所提到的:(3起案件)
count=count++
返回当前值,然后递增该值李>
count=++count
将返回递增的数字
在哪里做count++代码>只会增加数字
只需简单地使用count++
而不是count=count++只需简单地使用count++
而不是count=count++为什么要使用alert(count)代码>外部.done()
?注意get
是异步callIMOcount+=1
或count=count+1
更好。根据jsperfWhy使用alert(count),第二个选项实际上更有效代码>外部.done()
?注意get
是异步callIMOcount+=1
或count=count+1
更好。第二种选择实际上更有效,因为jsperf@Juhana-你说得对。但现在它一直在返回1
,-)啊!我知道密码里有个愚蠢的错误!对,对。@Juhana-你说得对。但现在它一直在返回1
,-)啊!我知道密码里有个愚蠢的错误!对,对。