如何从DOM中提醒此数组的值

时间:2011-05-05 00:15:52

标签: javascript jquery

在我的DOM中我看到了这个

<script type="text/javascript">
$(document).ready(function(){
    Test.js({"Now":"\/customers\/product\/1","id":"29scds","pro_id":"124""});
});
</script>

我需要从包含在DOM中的其他javascript页面中提醒Test.js中的值。我怎么能这样做

感谢

修改

alert(Test.js)

给了这个

function (params) {
    for (var prop in params) {
        this[prop] = params[prop];
    }
}

2 个答案:

答案 0 :(得分:2)

您发布的Test.js函数指定传入其中的对象的属性,使其成为this的属性,即对象Test。假设您的作用域中有Test对象,您可以按如下方式提醒值:

for (var p in Test) {
  if (Test.hasOwnProperty(p) && typeof(Test[p]) !== "function") {
    alert(p + " is " + Test[p]);
  }
}

See simplified example →

答案 1 :(得分:1)

在我看来,Test.js只是将属性从一个对象复制到另一个对象。它应该有hasOwnProperty过滤器,但它没有。以下内容可能有所帮助:

function showObj(o) {
  var r = [];
  for (var p in o) {
    if (o.hasOwnProperty(p)) {
      r.push(p + ': ' + o[p]);
    }
  }
  alert(r.join('\n'));
}


function test (params) {
  for (var prop in params) { 
    this[prop] = params[prop]; 
  }
}

var o = {foo:'foo',bar:'bar'};
showObj(o);

var a = {}
test.call(a,o);
showObj(a);