我们如何将对象作为参数传递给对象值中的函数名?
How can we pass object as a parameter to a function name in Object value?
我想将一个对象传递给一个函数,该函数是另一个对象的值。这可能吗,我们该怎么做?我可以轻松地传递一个字符串和一个变量作为字符串。但是,不能作为对象传递。
我有 2 个对象,例如:
var test1 = "qwerty";
var test2 = { qwerty: "sdaf" };
我想将这些对象作为参数传递给如下所示的对象值。
var props = {
event: `backdropEvent("${test}")`,
}
function backdropEvent(e){
console.log(e)
}
当我尝试传递 test1
时,我将其作为字符串获取。如何传递 test2
对象?
var test1 = "qwerty";
var test2 = { qwerty: "sdaf" };
var props = {
event: `backdropEvent("${test2}")`,
}
function backdropEvent(e){
console.log(e)
}
function testFn(){
testFn2(props);
}
function testFn2(e){
var x = Function(e.event);
x();
}
<button onclick="testFn()"> click me </button>
我可能弄错了,因为有点难以理解你想要完成的事情,但我相信你想使用 function binding
const test2 = { qwerty: "sdaf" };
const backdropEvent = (e) => {
console.log(e);
}
const props = {
event: backdropEvent.bind(null, test2)
}
props.event()
我想将一个对象传递给一个函数,该函数是另一个对象的值。这可能吗,我们该怎么做?我可以轻松地传递一个字符串和一个变量作为字符串。但是,不能作为对象传递。
我有 2 个对象,例如:
var test1 = "qwerty";
var test2 = { qwerty: "sdaf" };
我想将这些对象作为参数传递给如下所示的对象值。
var props = {
event: `backdropEvent("${test}")`,
}
function backdropEvent(e){
console.log(e)
}
当我尝试传递 test1
时,我将其作为字符串获取。如何传递 test2
对象?
var test1 = "qwerty";
var test2 = { qwerty: "sdaf" };
var props = {
event: `backdropEvent("${test2}")`,
}
function backdropEvent(e){
console.log(e)
}
function testFn(){
testFn2(props);
}
function testFn2(e){
var x = Function(e.event);
x();
}
<button onclick="testFn()"> click me </button>
我可能弄错了,因为有点难以理解你想要完成的事情,但我相信你想使用 function binding
const test2 = { qwerty: "sdaf" };
const backdropEvent = (e) => {
console.log(e);
}
const props = {
event: backdropEvent.bind(null, test2)
}
props.event()