如何从P5.js中的loadJSON的回调函数获取值的返回

时间:2019-02-20 18:10:40

标签: javascript processing p5.js

通常,我使用Javascript和P5.js编写此代码:

仅用于从url获取数据并与其他功能一起使用,甚至不需要多次重新加载。

function setup() {
  var main = document.getElementById('main');
  var start = document.createElement('button');
  main.appendChild(start);
  start.setAttribute('onclick', 'go()');
  // consideration of create TextNode of start button
}

function go() {
  loadJSON('url', treatData);
}

function treatData(data) {
  var arr = [];
  arr.push(data);

  var btn = document.createElement('button');
  //consideration of append btn var and create TextNode of it

  btn.setAttribute('onclick', 'get()');

  return arr;
}

function get() {
 // when i call treateData() here it is not work. 
  // so how get arr here;
}

1 个答案:

答案 0 :(得分:0)

除了将其用作对treatData()函数的回调之外,您不想从任何地方调用loadJSON()函数。

如果要访问已加载的数据,可以将其存储在变量中。像这样:

var arr;

function go() {
  loadJSON('url', treatData);
}

function treatData(data) {
  arr = data;
}

function get() {
  console.log(arr);
}