Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.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
Javascript 如何在跳转到之前操作ajax请求的结果,然后回调_Javascript_Ajax_Callback - Fatal编程技术网

Javascript 如何在跳转到之前操作ajax请求的结果,然后回调

Javascript 如何在跳转到之前操作ajax请求的结果,然后回调,javascript,ajax,callback,Javascript,Ajax,Callback,我试图在ajax请求进入.then()回调之前,在其结果上添加一些变量。但我的代码总是将ajax响应的结果返回到.then()语句 $.ajax({ url: "api.php", //this returning [{"sid":"454545454554"}] success:function(data) { a = data.push({"additional_var" : "one"});

我试图在ajax请求进入.then()回调之前,在其结果上添加一些变量。但我的代码总是将ajax响应的结果返回到.then()语句

   $.ajax({
            url: "api.php",  //this returning [{"sid":"454545454554"}]
            success:function(data) {
                a = data.push({"additional_var" : "one"});
                return a;
            }
        })
        .then(function(response1){
            console.log(response1);           
        })

在上面的代码中,
response1
始终从my api.php返回响应(
[{“sid”:“4554”}]
)。我希望
response1
在进入.then()之前添加
{“附加变量”:“one”}
。有什么办法吗?

或者把所有东西都放在
里。然后

    .then(function(response1){
        response1.push({"additional_var" : "one"});
        console.log(response1);           
    })
或者将另一个
链接到开头(除非代码的其他部分单独使用承诺,否则这不是一个好主意):


您可以这样做:

$.ajax({
url:“api.php”
}).then(功能(数据){
数据推送({
“附加变量”:“一个”
});
返回数据;
}).然后(功能(响应1){
控制台日志(response1);
})
const prom = $.ajax({
  url: "api.php"
})
  .then(function(response1){
    response1.push({"additional_var" : "one"});
    console.log(response1);           
  })

prom.then(console.log);