如何比较Javascript中两个承诺产生的值?
你好 我想知道如何比较Javascript中两个承诺的值。 我不知道如何让程序在if语句之前等待。 如果承诺尚未实现,则该语句的计算结果为false,因此程序遵循else分支如何比较Javascript中两个承诺产生的值?,javascript,dns,google-cloud-dns,Javascript,Dns,Google Cloud Dns,你好 我想知道如何比较Javascript中两个承诺的值。 我不知道如何让程序在if语句之前等待。 如果承诺尚未实现,则该语句的计算结果为false,因此程序遵循else分支 谢谢您可以将其包装在另一个异步函数中: async function getDNShomeIP(){ var response = await fetch('https://dns.google/resolve?name=example.com'); // this uses the google api
谢谢您可以将其包装在另一个异步函数中:
async function getDNShomeIP(){
var response = await fetch('https://dns.google/resolve?name=example.com'); // this uses the google api
var json = await response.json();
var homeIPadress = json.Answer[0].data;
console.log(homeIPadress);
return homeIPadress;
};
async function getCurrentIP(){
var response = await fetch("https://api.ipify.org?format=json");
var json = await response.json()
var currentIPadress = json.ip;
return currentIPadress;
}
var homeIPadress = getDNShomeIP();
var currentIPadress = getCurrentIP();
if (homeIPadress == currentIPadress){
alert("from same from lol");
} else {
alert("not from same")
};
您可以将其包装到另一个异步函数中:
async function getDNShomeIP(){
var response = await fetch('https://dns.google/resolve?name=example.com'); // this uses the google api
var json = await response.json();
var homeIPadress = json.Answer[0].data;
console.log(homeIPadress);
return homeIPadress;
};
async function getCurrentIP(){
var response = await fetch("https://api.ipify.org?format=json");
var json = await response.json()
var currentIPadress = json.ip;
return currentIPadress;
}
var homeIPadress = getDNShomeIP();
var currentIPadress = getCurrentIP();
if (homeIPadress == currentIPadress){
alert("from same from lol");
} else {
alert("not from same")
};
在另一个异步函数中使用wait关键字,以便该函数在继续执行之前等待响应 异步函数质量测试仪{ var homeIPadress=wait getDNShomeIP; var currentipAddress=等待getCurrentIP; 如果HomeIpAddress==CurrentIpAddress{ 来自lol的相同警报; }否则{ 不一样 }; }
测试质量 在另一个异步函数中使用wait关键字,以便该函数在继续执行之前等待响应 异步函数质量测试仪{ var homeIPadress=wait getDNShomeIP; var currentipAddress=等待getCurrentIP; 如果HomeIpAddress==CurrentIpAddress{ 来自lol的相同警报; }否则{ 不一样 }; }
测试质量 首先需要修复fetch函数,然后修复async wait函数 您必须像这样将等待函数放在异步函数上, 按照下面的代码修复getdnshomeip
async function execute() {
var homeIPadress = await getDNShomeIP();
var currentIPadress = await getCurrentIP();
if (homeIPadress == currentIPadress){
alert("from same from lol");
} else {
alert("not from same");
}
}
execute();
首先需要修复fetch函数,然后修复async wait函数 您必须像这样将等待函数放在异步函数上, 按照下面的代码修复getdnshomeip
async function execute() {
var homeIPadress = await getDNShomeIP();
var currentIPadress = await getCurrentIP();
if (homeIPadress == currentIPadress){
alert("from same from lol");
} else {
alert("not from same");
}
}
execute();
你在描述我创建的一个函数 异步函数getDNShomeIP{ var response=wait fetch'https://dns.google/resolve?name=example.com'; var json=await response.json; var homeipaAddress=json.Answer[0]。数据; console.loghomeIPadress; 返乡; }; 异步函数getCurrentIP{ var响应=等待fetchhttps://api.ipify.org?format=json; var json=await response.json var currentIPAddress=json.ip; console.logcurrentIPAddress; 返回当前地址; } 常数{eq}=rubico eqgetDNShomeIP,getCurrentIP.thenconsole.log
你在描述我创建的一个函数 异步函数getDNShomeIP{ var response=wait fetch'https://dns.google/resolve?name=example.com'; var json=await response.json; var homeipaAddress=json.Answer[0]。数据; console.loghomeIPadress; 返乡; }; 异步函数getCurrentIP{ var响应=等待fetchhttps://api.ipify.org?format=json; var json=await response.json var currentIPAddress=json.ip; console.logcurrentIPAddress; 返回当前地址; } 常数{eq}=rubico eqgetDNShomeIP,getCurrentIP.thenconsole.log
谢谢,我没有意识到它已经存在了,我只是使用了堆栈溢出中的其他位,并自己编写了代码。我们得出了相同的结论。lolYeah,我会说这是一个非常幸运的情况:-谢谢,我没有意识到它已经存在了,我只是使用了堆栈溢出的其他位,并自己编写了代码。我们得出了相同的结论。是的,我想说这是一个非常幸运的情况:-