Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用var在javascript中存储超过10位的数字?_Javascript_Jquery_Ajax - Fatal编程技术网

如何使用var在javascript中存储超过10位的数字?

如何使用var在javascript中存储超过10位的数字?,javascript,jquery,ajax,Javascript,Jquery,Ajax,首先, 我在干什么? 我必须在网页中设置我们产品中电子邮件的限制。它使用javascript进行验证。它最多可以处理8位数字。但在我们的QA团队中,在其他电子邮件字段的文本框中输入超过17位的数字。它会抛出负面消息。我能做什么 我的示例代码是: if(form.otheremail){ if(validEmailArray.endsWith(',')){ var otherEmailLength=validEmailArray.substring(0,validEmailArray.length

首先,

我在干什么? 我必须在网页中设置我们产品中电子邮件的限制。它使用javascript进行验证。它最多可以处理8位数字。但在我们的QA团队中,在其他电子邮件字段的文本框中输入超过17位的数字。它会抛出负面消息。我能做什么

我的示例代码是:
if(form.otheremail){
if(validEmailArray.endsWith(',')){
var otherEmailLength=validEmailArray.substring(0,validEmailArray.length-1)。拆分(“,”;
var setLimitOtherEmail=window.parent.document.getElementById('setLimitOtherEmail')。值;
如果(setLimitOtherEmail=='-1'){
form.otherEmails.value=otherEmailLength;
}

else if(otherEmailLength.length尝试将每个数字解析为整数,然后再对它们执行任何比较操作。

var setLimitOtherEmail=parseInt(window.parent.document.getElementById('setLimitOtherEmail').value);

除此之外,您确定otherEmailLength实际上是您想要的数字吗?从外观上看,您正在获取validEmail数组的子字符串,并将其拆分为“,”,但看起来您并没有实际获得数组的长度。请尝试在otherEmailLength值的末尾添加.length

var otherEmailLength = validEmailArray.substring(0,validEmailArray.length-1).split(",").length;

这是因为限制是字符串,当字符串与数字(长度)进行比较时,数字被强制转换为字符串,而不是相反

然后按字典顺序对它们进行比较——按字典顺序,“9”比“19”更(>)

在比较之前,需要使用
parseInt(setLimitOtherEmail,10)
获取数值

var otherEmailLength = validEmailArray.substring(0,validEmailArray.length-1).split(",").length;