亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Javascript for循環在結束前停止

Javascript for循環在結束前停止

Qyouu 2021-06-02 18:50:52
我有一個非常簡單的自制 API,它讀取服務器上一些文件的內容,解析它們并以 JSON 發送它們的內容。我的網頁使用 Ajax 調用 API,讀取數據并將它們存儲在自定義對象上。問題是,無論我在 JSON 中解析了多少文件,只有第一個文件被處理為我的 Javascript 代碼。runs = [];function Solution(values) {    this.number = values[0]    this.weight = values[1]    this.value = values[2]    this.score = values[3]}function DateValue(date) {    regex = new RegExp(/(\d{4})-(\d{1,2})-(\d{1,2})-(\d{1,2}):(\d{1,2}):(\d{1,2})-(\d{1,2})/)    dateArray = date.split(regex)    this.year = dateArray[1]    this.month = dateArray[2]    this.day = dateArray[3]    this.hour = dateArray[4]    this.minutes = dateArray[5]    this.secondes = dateArray[6]}           function Run(values) {    this.algorithm = values["log"]["Algorithm used"]    this.weight = values["log"]["Weight"]    this.value = values["log"]["Value"]    this.date = new DateValue(values["log"]["Date"])    this.solutions = []    for(i = 0; i < values["datas"].length; i++) {        this.solutions.push(new Solution(values["datas"][i]))    }}$.ajax({    url: 'api.php', // the data sent by the API is a valid JSON    dataType: 'json',    success: function(data, status) {        console.log(data);        for(i = 0; i < data.length; i++) {            console.log(data[i]);            var run = new Run(data[i])            runs.push(run);        }    }});在console.log(data)for循環正確打印所有從API收到的DATAS,但之前console.log(data[i])只打印數組的第一個元素,我不明白為什么。
查看完整描述

1 回答

?
繁星coding

TA貢獻1797條經驗 獲得超4個贊

i在多個位置使用單個全局索引變量進行循環。

您的第一個循環調用Run,它運行另一個循環以完成增加i變量。

開始你的循環,i每次都聲明一個本地:

for(var i=0;...)


查看完整回答
反對 回復 2021-06-11
  • 1 回答
  • 0 關注
  • 183 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號