gpt4 book ai didi

javascript - 调用函数内声明的变量

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

我在 Chrome 扩展中使用消息传递将数据从 background.js 移动到 content.js 文件。

在下面的函数中,当我将变量输出到函数内的控制台时,我得到了预期的数据。当我在函数外部尝试相同的操作时,我得到 null(如全局变量中所定义)。

有谁知道如何从函数中提取数据,以便我可以通过 AJAX 调用将其发布。

代码

var capturedData = "url=" + window.location.href;
var localHash = "localhash=" + CryptoJS.MD5(capturedData);
var email = null;

chrome.extension.sendMessage({greeting: "hello"}, function(response) {
email = response;
console.log(JSON.stringify(email));
return true;
});
console.log(JSON.stringify(email));


$.ajax({
type: 'post',
url: 'url',
data: {"url":capturedData, "localhash":localHash},
dataType: 'json',
success : function (data) {
if(data.url)
{
console.log(data.url);
}
}
});

输出

null content.js:10 {"email":"email@email.com"} content.js:7

谢谢!

最佳答案

在获得电子邮件的一些值(value)后,您需要进行 ajax 调用:

var capturedData = "url=" + window.location.href;
var localHash = "localhash=" + CryptoJS.MD5(capturedData);
var email = null;

chrome.extension.sendMessage({greeting: "hello"}, function(response) {
email = response;
console.log(JSON.stringify(email));


$.ajax({
type: 'post',
url: 'url',
data: {"url":capturedData, "localhash":localHash},
dataType: 'json',
success : function (data) {
if(data.url)
{
console.log(data.url);
}
}
});

return true;
});

console.log(JSON.stringify(email));

关于javascript - 调用函数内声明的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29440835/

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