gpt4 book ai didi

Javascript 大于和小于无法正常运行

转载 作者:行者123 更新时间:2023-12-03 11:48:26 25 4
gpt4 key购买 nike

我正在使用一组函数从 URL 中提取图像。例如,如果 URL 为 example.com/image/8/,则将加载第 8 个图像。

问题是,当 URL 小于 10 时,它不起作用(我的函数将 varNumber 设置为 1,但当它为 10 或更大时,函数可以正常工作。这是代码..

var totalCount = '<?php echo $total; ?>'; 
HREF = '<?php echo get_permalink($post->ID); ?>';

var url = window.location.pathname;
var urlsplit = url.split("/");
var imgNumber = urlsplit[5];


if (typeof imgNumber === 'undefined') {
imgNumber = 1;
} else if (imgNumber < 1) {
imgNumber = 1;
history.pushState('', '', HREF);

} else if (imgNumber > totalCount) {
alert("else if ( " + imgNumber + " > " + totalCount + ")");
imgNumber = 1;
history.pushState('', '', HREF);

} else {
$("#slider-"+imgNumber).removeClass("img-inactive");
$("#slider-"+imgNumber).addClass("img-active");
$("#slider-1").removeClass("img-active");
$("#slider-1").addClass("img-inactive");
}

正如您所看到的,上面的代码首先检查 varNumber 是否已定义,然后检查它是否小于 1。然后检查它是否大于 totalCount。这就是事情变得困惑的地方。我检查了我的浏览器控制台并运行警报以验证totalCount和imgNumber是否有变量。

要获得更好的示例,请参阅以下链接:

imgNumber > TotalCount 不起作用... http://badsentinel.com/2014/09/18/daily-giftastic-take-away-these-three-fingers-and-what-are-we-left-with-13-gifs/3/

imgNumber > TotalCount 工作正常... http://badsentinel.com/2014/09/18/daily-giftastic-take-away-these-three-fingers-and-what-are-we-left-with-13-gifs/10/

提前致谢

最佳答案

首先使用 parseInt 解析值,如下所示:

var imgNumber = parseInt(urlsplit[5],10);  //second parameter i.e '10' here is radix which is optional but it is advised to use it.

否则,在javascript/jquery中,当我们处理数字时,值将被视为字符串,我们必须使用parseInt<来解析它parseFloat

编辑:-根据您的评论尝试以下操作:

var imgNumber = parseInt(urlsplit[5],10) || 0; //if parseInt() fails to parse value to int then it will return 0 value.

关于Javascript 大于和小于无法正常运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25945179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com