将局部变量的值复制到javascript中的全局变量

时间:2017-05-22 13:16:44

标签: javascript jquery

我试图根据函数内定义的局部变量更新全局变量的值。

我在这里阅读StackOverflow以使用窗口对象,但它仍无法正常工作。

p.dataTable = new DataTable();
public DataTable dataTable
{
    get { return _dataTable; }
    set
    {
        _dataTable = value;
        RaisePropertyChangedEvent("dataTable");
    }
}

这是JS小提琴 - https://jsfiddle.net/t18ofd65/8/

1 个答案:

答案 0 :(得分:2)

您从根本上误解了点击事件的附加功能。此代码不会逐行顺序运行

var z = 0;                   // Line 1
$('#btn').click(function() { // Line 2
  window.z = 1               // Line 3
});
console.log(z)               // Line 5

执行第1行,然后执行第2行。但是直到实际点击了按钮,第3行才会执行。第5行在第2行后立即执行。

如果您在事件处理程序中添加了console.log(z)console.log(window.z)(即第3行之后),您会看到它实际更新了变量。