2011-05-05 20 views
0

在我的DOM提醒这个数组的值看这个我如何从DOM

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

我需要从另一个JavaScript包含在DOM页面,多数民众赞成在Test.js提醒了值。我怎样才能做到这一点

感谢

编辑

alert(Test.js) 

给这个

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

什么是'Test.js()'? – drudge 2011-05-05 00:18:02

+0

警报(Test.js) 给这个 功能(PARAMS){ 为(params中VAR丙){ 此[丙] =参数[丙]; } } – Autolycus 2011-05-05 00:22:56

+0

这与jQuery或AJAX有什么关系? – RobG 2011-05-05 00:23:35

回答

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); 
2

,您张贴被分配到它成为this它是对象Test属性传递的对象的属性的Test.js功能。假设Test对象是在你的范围内都有效,你可以按如下提醒值:

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

See simplified example →