Javascript:将object传递给由string创建的Javascript

javascript: pass object to a javascript created from string

本文关键字:Javascript string 创建 object      更新时间:2023-09-26

当javascript从字符串创建对象时,是否可以将对象传递给javascript ?

我试过这个,但它不工作:

var myobject = {name:"auto",color:"blue"};
var btn = "<button type='button' onclick='myfunc(" + myobject + ");'>Edit</button>";

如果我检查onclick事件,对象看起来像:[object Object]

也许这是可能的,但这是非常错误的做法。

最好使用第二个函数:

var myobject = {name: "auto", color: "blue"},
    btn = "<button type='button' onclick='myfunc2()'>Edit</button>",
    myfunc = function(obj) {
        // some function
    },
    myfunc2 = function() {
        myfunc(myobject);
    };

使用JSON对象格式使你的应用程序为任何注入打开。所以,试着重构你的代码。确保你真的需要它

您可以将对象格式化为:

"(" + JSON.stringify(myobject) + ")"

我想知道你为什么不直接

 onclick='myfunc(myobject);'

如果myobject变量在你点击的时候设置了,它将适合