You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

jQuery中$.get()方法是否有对应的同步版本?

关于jQuery $.get同步替代方案的问题解答

你的代码里getText函数本身没有返回值,再加上$.get是异步请求,当你执行var text = getText(...)时,请求还没完成就已经执行了console.log(text),所以控制台输出undefined。

jQuery提供了同步请求的实现方式,你可以用$.ajax并设置async: false来替代$.get,这就是类似的同步版本:

var text = getText("https://www.google.com/search?q=search");
console.log(text);

function getText(url) {
  let result;
  $.ajax({
    url: url,
    type: 'GET',
    async: false,
    success: function(data) {
      result = data;
    }
  });
  return result;
}

不过要注意:同步请求会阻塞浏览器主线程,在请求完成前用户无法和页面交互,容易造成页面卡顿甚至假死,所以非必要场景不建议使用。

现在更推荐用异步的现代处理方式,比如利用$.get返回的Promise结合async/await,既不阻塞页面,又能按预期顺序获取结果:

async function getText(url) {
  const data = await $.get(url);
  return data;
}

// 调用方式
(async function() {
  var text = await getText("https://www.google.com/search?q=search");
  console.log(text);
})();

内容的提问来源于stack exchange,提问作者frosty

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 11:15:58