色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

javascript,$。ajax,變量名

瀏覽:109日期:2024-04-23 13:47:43
如何解決javascript,$。ajax,變量名?

您可以使用.queue(),$.map()以保持范圍name。此外,改變status陣列的具有屬性的對象status,其中值是一個數組,以防止可能出現的沖突this.status的Person對象。

請注意,您也可以連接.promise(/* queueName*/)在執行任務.then()時,在所有排隊的功能queueName,IEG,'status'一直呼吁,queueName.length是0。

function Person(name, status){ this.name = name; this.status = status;}var blob = new Blob([’{'stream':null}’], {type:'application/json'});var url = URL.createObjectURL(blob);// change `status` array reference, e.g., to `arr`var arr = {status:[]};var array = ['bill','bob','carl','ton'];$(arr).queue('status', $.map(array, function(curr) { return function(next) { var name = curr; // do asynchronous stuff $.ajax({url:url, dataType:'json'}) .then(function(data) { if(data.stream == null){ var person = new Person(name, 'dead'); console.log(name, person); arr.status.push(person); } }) .then(next) // call next function in `'status'` queue }})).dequeue('status').promise('status')// do stuff when all functions in `'status'` queue have completed,// `'status'` queue `.length` is `0`.then(function() { // `this` : `arr` as jQuery object // `this[0].status`: array containing objects pushed to `arr.status` console.log(this[0].status); // $(this).prop('status');});<script src='https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js'></script>

jsfiddle https://jsfiddle.net/nnayjckc/2/

您也可以使用$.when(),.apply(),$.map(),返回相同的結果

function Person(name, status) { this.name = name; this.status = status;}var blob = new Blob([’{'stream':null}’], { type: 'application/json'});var url = URL.createObjectURL(blob);// change `status` array reference, e.g., to `arr`var arr = { status: []};var array = ['bill', 'bob', 'carl', 'ton'];$.when.apply($, $.map(array, function(curr) { var name = curr; return $.ajax({ url: url, dataType: 'json' }) .then(function(data) { if (data.stream == null) {var person = new Person(name, 'dead');console.log(name, person);arr.status.push(person); } })})).then(function() { console.log(arr.status)});<script src='https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js'></script>

jsfiddle https://jsfiddle.net/nnayjckc/3/

解決方法

我正在嘗試遍歷數組,并為for循環分配變量。所以像這樣:

function Person(name,status){ this.name = name; this.status = status;}var status = [];var array = ['bill','bob','carl','ton'];function exAjax(function(){ for(var i = 0; i < array.length; i++){ var name = array[i]; console.log(name); =====> this gives the correct name $.ajax({ url: xxxxxxx,success: function(data){ if(data.stream === null){ var person = new Person(name,'dead'); console.log(name); =====> return undefined until the last person status.push(person); } } }) name = ''; }})

我遇到的問題是名稱沒有進入成功功能。我以為js會繼續向上查找該變量,如果它在當前作用域中不存在?如果嘗試console.logname,我將無法為name變量定義!示波器大師我在做什么錯?

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 免费国产一级特黄久久 | 日韩欧美亚洲每的更新在线 | 亚洲精品福利一区二区三区 | 香蕉超级碰碰碰97视频在线观看 | 成人高清毛片a | 日本天堂网 | 色拍自拍亚洲综合在线 | 国产激情一区二区三区 | 在线播放高清国语自产拍免费 | 国内精品不卡一区二区三区 | 亚洲一区欧美一区 | 亚洲精品久久玖玖玖玖 | 亚洲网址在线观看 | 国产欧美日韩在线一区二区不卡 | 欧美日韩在线观看一区 | 国产成人精品一区二区视频 | 成人午夜亚洲影视在线观看 | 国产欧美一区二区三区视频在线观看 | 日本亚洲成高清一区二区三区 | 久久香蕉国产精品一区二区三 | 精品久久看 | 久草网在线视频 | 国产成人高清在线观看播放 | 美国一级毛片视频 | 大尺度福利视频在线观看网址 | 日韩精品一区二区三区四区 | 国产日本在线 | 久久精品亚洲精品国产欧美 | 99免费在线观看视频 | 手机看片日韩日韩国产在线看 | 久久久9视频在线观看 | 一级aaa级毛片午夜在线播放 | 国产精自产拍久久久久久 | 国产精品免费观看视频播放 | 在线观看欧洲成人免费视频 | 91精品国产一区二区三区左线 | 一级特黄一欧美俄罗斯毛片 | 亚洲理论片在线中文字幕 | 久久久久国产一级毛片高清板 | 97se亚洲综合在线韩国专区福利 | 久久精品道一区二区三区 |