【问题标题】:Javascript local variables . How to reference in cicleJavascript 局部变量。如何在圆圈中引用
【发布时间】:2016-08-28 08:44:13
【问题描述】:

这就是我在循环中引用全局变量的方法。

 _.forEach(myTableName.detailsObjects, function (o, key) {

                    if (window[o] && window[o].serverSideProcessing == true) {
                        window[o].prepareData(data, false);
                        window[o].setDML(data, false);

但是如果它们是局部变量呢?

o.prepareData 和 o.setDml 不起作用。 谢谢

【问题讨论】:

  • 函数内部可以使用this['variableName']引用局部变量

标签: javascript oop variables object


【解决方案1】:

不确定您遇到的确切问题是什么,但它也适用于局部变量。 这里有两个版本的代码,第一个是纯js使用Array.forEach,第二个使用下划线的_.forEach

myTableName = {
    "detailsObjects": [
        {"id":1, "prepareData":true}, 
        {"id":2, "prepareData":false}
    ]
}

myTableName.detailsObjects.forEach(function(o, key) {
    alert('Result: ' + o.id + ': ' + o.prepareData + ' key: ' + key); 
})


_.forEach(myTableName.detailsObjects, function(o, key) {
    alert('Underscore Result: ' + o.id + ': ' + o.prepareData + ' key: ' + key); 
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-23
    • 1970-01-01
    • 1970-01-01
    • 2011-08-15
    • 1970-01-01
    • 2014-04-24
    相关资源
    最近更新 更多