【发布时间】:2018-01-22 11:53:16
【问题描述】:
我通过 JS 调用 API,然后在响应上运行 if 查询
var myurl = 'https://XXXX.net/api/check?';
var myaccess = 'access_key=XXXX';
var myemail = 'email=XXX@XXX.com';
var pcapi = new XMLHttpRequest();
var myNewURL = myurl + myaccess + '&' + myemail;
pcapi.open("GET", myNewURL, false);
pcapi.send();
var emailStatus = JSON.parse(pcapi.responseText);
var emailStatus = emailStatus.format_valid;
var emailStatus= JSON.stringify(emailStatus);
if emailStatus == 'true'{
alert('Email is correct');
}
else{
alert('Email is incorrect');
}
如果我提醒 emailStatus,它会在电子邮件地址有效时返回“true”。但是,当我在“if”语句中尝试它时,控制台中会出现“意外标识符”错误。有任何想法吗?
【问题讨论】:
-
使用括号:
if (emailStatus == 'true') { -
为什么要将标志转换为字符串,然后使用字符串比较?只需删除
var emailStatus = emailStatus.format_valid;并使用if (emailStatus.format_valid) { -
另外:Ajax 应该是异步(毕竟这就是“A”的含义)。强烈建议从
open调用中删除false并使用onload回调。
标签: javascript json