我在网站内有一个图库,每个图库图像都由一个网址表示,如下所示:

http://www.example.com/gallery/my-photos#10

http://www.example.com/gallery/my-photos#11

http://www.example.com/gallery/my-photos#12







我创建了一个条件语句来防止用户输入无效的URL。

var galleryNum = window.location.hash.substring(1);

if( typeof(galleryNum) == "string" || typeof(galleryNum) == "NaN" ){
    console.log('this is not a number');
}else if(typeof(galleryNum) == "number"){
    console.log('this is a number');
}


但这是行不通的,无论我输入数字还是字符串,我从window.location.hash.substring(1)获得的值将始终为字符串。

最佳答案

如果您想获取号码,请使用:

parseInt(galleryNum,10)


如果要检查galleryNum是否为数字,可以使用:

isNaN(parseInt(galleryNum,10))

09-25 19:49