簡體   English   中英

將JSON推送到數組返回未定義

[英]Pushing json to array return undefined

我在這里有一些關於javascript的問題。 我一直在搜尋,但沒有運氣。 所以我有以下json對象:

{
  core: {
      repositoryformatversion: '0',
      filemode: 'true',
      bare: 'false',
      logallrefupdates: 'true'
  },
  'remote "origin"': {
      fetch: '+refs/heads/*:refs/remotes/origin/*',
      url: 'https://github.com/user/repo.git'
  },
  'branch "master"': {
      remote: 'origin',
      merge: 'refs/heads/master'
  }
}

這是我的腳本:

var iniparser = require('iniparser');
var result = [];

iniparser.parse('analytics.js/.git/config', function(err,data){
   result.push(data);
});

console.log(result);

它返回[] 實際上,我想通過使用result.push(data['remote "origin"'].url)僅推送url( https://github.com/user/repo.git result.push(data['remote "origin"'].url) 當我使用console.log(data['remote "origin"'].url)它將正確返回URL。

謝謝。

您在使用none-iniparser嗎?

如果是這樣,則看起來parse是異步的(我通過回調進行判斷,並且有一個parseSync函數。

這意味着您並不真正知道何時調用回調。 parse被稱為,然后您的程序立即移至console.log result ,該result尚未更改。 然后在某個時間,只要parse完成,就會調用解析回調

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM