2012-03-30 35 views
1

我删除了我的旧帖子,因为它包含大量的垃圾邮件。我创建了一个jsfiddle来重现我遇到的问题。Jquery对象vs字符串问题

http://jsfiddle.net/mLxSP/

console.clear(); 
var args = '{ action: downline }'; 

showObject(args); 

showObject({ action: 'downline' }); 


function showObject(args) { 

    console.log(args);   
} 

我如何通过ARGS为对象?我目前正在动态地将args构建成一个字符串,并且需要将它作为一个对象传递给函数才能正常工作。

+0

你可以显式地解析args到json:'showObject(JSON.parse(args))'。 – 2012-03-30 18:27:20

回答

2

这不是你通过,而是你的声明是问题。将参数定义为

var args = { action: 'downline' }; 
+0

啊,我很高兴有人明白我想说什么。有时候我不会说自己最好的。这就像一个魅力,非常感谢你! – 2012-03-30 18:27:39

0

args.action,或ARGS [动作]将显示下线

你也可以让你的对象,如: ARGS = {}; args.action ='downline'; etc

有什么问题?

0

如果您生成它为有效JSON,你可以解析字符串作为JSON和显示。

console.clear(); 
var args = '{ "action": "downline" }'; 

showObject($.parseJSON(args)); 

showObject({ action: 'downline' }); 


function showObject(args) { 

    console.log(args);   
} 
+0

啊,这很有趣。我将不得不与这一些玩弄。 – 2012-03-30 18:32:11

0

jquery“parseJSON”会帮助你。

$(document).ready(function() { 

    var args = $.parseJSON('{"action": "downline" }'); 
    showObject(args); 
    showObject({ 
     action: 'downline' 
    }); 

    function showObject(args) { 
     console.log(args); 
    } 
});​