gpt4 book ai didi

javascript - 如何从 JSON 对象中触发函数

转载 作者:行者123 更新时间:2023-12-03 01:03:13 32 4
gpt4 key购买 nike

我有一个从一个程序创建的函数,然后在另一个程序的 UI 中创建。第一个程序构建代码,第二个程序渲染它。

问题来了

JSON 对象包含一个字符串形式的 FUNCTION,因为这就是它从 NODE SERVICE 进入 Angular 5.x UI 的方式

这是 JSON

{
"test": {
"trigger": "load",
"functionName": [
"function(){if(1 === 1){console.log('hello');} else {console.log('goodbye');}" **<== CORRECTED the original single = that Johnathan caught.**
]
}
}

这是我能展示的最简单的方式。是的,{} 周围有“”,这是无效的 JSON,但我们在后端使用的状态机会以这种方式在客户端上呈现(清理)它。

底线:我想要实现的是调用标准 JavaScript 函数的能力,例如 onBLur、onChange、onHover、onMouseOver 等...有些函数是不相关的...但我们绝对需要 onBlur 和 onChange .

我在 Angular 1.6 中使用 app.js 和路由器执行了此操作,通过该路由器,我调用了 JSON 对象内的函数,该对象调用了 Controller 上的函数。哇啦!使用$scope.$parent.functionName(arg1 if any){}

很容易

我简单地写道:

....,
onEntry: (function() {
do something cool here...
}),
....

那么,使用 TypeScript,我怎样才能实现同样的目标呢?

我希望我的问题很清楚?

谢谢

更新!!!

这是捕获实际代码的 DEV 控制台的屏幕截图,抱歉,昨晚是凭内存得出的。

Dev Console showing JSON with function

希望这有助于澄清我的问题。

最佳答案

像这样,但请确保您正在使用 === 而不是 = 执行您的条件,并放入所有括号。

let myTest = {
"test": {
"trigger": "load",
"functionName": function(){if(1 === 1){console.log('hello');} else {console.log('goodbye');}}
}
};

myTest.test.functionName();

关于javascript - 如何从 JSON 对象中触发函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52529027/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com