我花了几个小时试图找出为什么变量 dataset_path 这个全局变量总是未定义的原因
var dataset_path ;
function myFunction() {
offline_data_mainlooper_bitfinex();
print_bilan();
}
function offline_data_mainlooper_bitfinex(){
var hours_step_size = 1*2;
var daily_step_size = 24*2,
// dataset_path = './quote/bitfinex/from_1480550400to_1512100800_1hquote.json';
// dataset_path = ('./quote/bitfinex/from_1480550400to_1512100800quote.json') //thats's 30 min
dataset_path = './quote/bitfinex/from_1480550400to_1512100800_15mquote.json'
//... somecode
}
function print_bilan(){
var filename = './analysis/test_log.json';
//... somecode
console.log('Quote saved! to ' +dataset_path, filename)
}
答案 0 :(得分:6)
因此:
var daily_step_size = 24*2,
// ^
dataset_path = './quote/bitfinex/from_1480550400to_1512100800_15mquote.json'
这是在offline_data_mainlooper_bitfinex
的局部范围内声明多个变量,而不是结束daily_step_size
声明然后对全局变量进行赋值。用分号替换逗号(或省略它)。
答案 1 :(得分:0)
当我放一个时,它对我有用;
后代替avar daily_step_size = 24*2,
我认为你正在声明一个新的var,其范围在函数内部。所以当你调用全局的时候,它是未定义的。
希望有所帮助