如何使用Javascript或jQuery在函数中设置变量
我需要将数据从HTML代码中移出并按需加载 我需要这样做:如何使用Javascript或jQuery在函数中设置变量,javascript,jquery,Javascript,Jquery,我需要将数据从HTML代码中移出并按需加载 我需要这样做: function processData( data ) { if ( data.length===0 ) { data = get data from server using Ajax or even... data = [['2011-06-01',1],['2011-06-02',3]] ; // just for educational purposes } e
function processData( data )
{
if ( data.length===0 )
{
data = get data from server using Ajax or even...
data = [['2011-06-01',1],['2011-06-02',3]] ; // just for educational purposes
}
else go do stuff with data ;
}
storeData = [] ;
processData( storeData ) ; // first time storeData doesn't contain any data
processData( storeData ) ; // now storeData contains data
我不知道如何从函数中填充数据。有没有办法做到这一点
function processData()
{
if ( storeData.length===0 )
{
storeData = get data from server using Ajax
}
else go do stuff with storeData ;
}
storeData = [] ;
processData( storeData ) ; // first time storeData doesn't contain any data
processData( storeData ) ; // now storeData contains data
无论如何,storeData是一个全局的。当您指定processData(data)
时,您正在执行所谓的传递值。基本上,你需要复制数据。一旦程序退出该函数,副本将丢失到垃圾回收中。另一种方法是通过引用传递,但因为它是全局的(在函数外部声明),所以没有什么意义
编辑
读这里
了解更多具体细节可能会有所帮助,因为你可能会以一种不同寻常的方式完成任务。也许有更好的方法来实现你想要的 您是否尝试过以下简单的方法:
function processData( data )
{
...
return data;
}
storeData = [] ;
storeData = processData( storeData ) ; // first time storeData doesn't contain any data
storeData = processData( storeData ) ; // now storeData contains data
不是很优雅,但是您可以让函数返回两个值(一个由2个值组成的数组),一个包含jPlot对象,另一个包含数据。另外,听起来回答你问题的另一个约瑟夫有一个很好的解决方案。