首页 > 解决方案 > 局部变量未将数据分配给全局变量 javascript

问题描述

我有一个将数据返回给 getDates() 的函数,处理后我想要全局变量中的数据,但它不起作用。

var bookedDates=[];
function getDates(result) {
     var bookedDates1=result.split(",");
     var bookedDates2=[];
    for(i=1;i<bookedDates1.length;i++){
        bookedDates2.push(bookedDates1[i]);
    }
    bookedDates=bookedDates2;
}
alert(bookedDates);

$.ajax({
type: "POST",
url: "getbookeddates.php",
cache: false,
success: function(result){
    getDates(result);
//dates booked 
}

bookDates 在这种情况下是空白的,但它应该是一个带有 ["21","22"] 的数组。

标签: javascriptarraysfunctionglobal-variableslocal-variables

解决方案


看起来你犯了一个非常愚蠢的错误。您正在声明函数 getDates 正在其中获取参数结果。但是你没有调用函数所以函数的内部在你调用它之前不会被执行。

尝试添加函数的调用行。

获取日期(结果);

在警戒线之前。


推荐阅读