Javascript - 运行存储在 JSON 属性中的函数

标签 javascript json

我有一个 JSON 对象,如下所示:

var JSON = 
[
  {
    "cat_function":"(function(){console.log('ITS HAPPENING');})();"
  }
]

JSON[0].cat_function;

在我的脚本中,我需要加载函数并执行它。简单地调用 JSON[0].cat_function 是行不通的,这在我的预料之中;让它运行的最佳方法是什么?

澄清一下,此 JSON 数据来自 CSV,其功能显然比 console.log 更复杂。该函数存储为字符串,对此无能为力。

有什么想法吗?

最佳答案

你可以做

var functionCode = JSON[0].cat_function;

var value = eval( functionCode );

无论如何,我应该警告你 eval 是邪恶的,所以如果你能实现另一种导入代码的方法会更好。

关于Javascript - 运行存储在 JSON 属性中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17165086/

相关文章:

javascript - 这个 JSON : 有什么问题

javascript - 数组中的重复数字 | JavaScript

javascript - .GetElementsByName.SelectedIndex 明显更改选项但不是以编程方式更改?

java - 使用异步任务 (Json) 更新 ListView

参数化查询中的 JavaScript 错误

java - 如何使用 Jackson 反序列化对象数组

javascript - 一旦激活,使用js或jQuery使图标链接到fieldset

javascript - 登录成功后如何重定向用户?

javascript - 如何在 javascript 或 jquery 上插入 html

c# - 强制 JSON.NET 在序列化 DateTime 时包含毫秒(即使 ms 组件为零)