问题标签 [jsonata]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jsonata - 如何使用 JSONata 添加到现有对象?
我需要能够使用 JSONata 将元素添加到任意复杂的对象。
我事先并不知道对象中的所有元素。
例如,假设我要添加
对于一个看起来像这样的对象:
但它可能包含任意数量或混合的其他元素。
我可以替换整个对象,但我不知道如何添加它。
jsonata - 如何使用 JSONata 获取参数中包含子字符串的对象?
这是数据:
如何构建正确的 JSONata 查询以获取name
包含的所有条目World
?
我确实尝试过"'World' in name"
,但它返回undefined
谢谢。
arrays - 在数组 JSONata 中包含计数器
我刚开始使用 JSONata,我发现轻松解析 JSON 非常有趣。但是我有这个问题,我不确定是否可以直接用JSONata完成。
我想包括一个从 1 到“数组中的对象数”的计数器,如下所示:
JSONata 表达式的原始输出:
[ {“a”:假,“b”:“”,“c”:“”,“d”:真},{“a”:假,“b”:“”,“c”:“”, “d”:真},{“a”:假,“b”:“”,“c”:“”,“d”:真}]
想要的输出:
[ { "count": "1", "a": false, "b": "", "c": "", "d": true }, { "count": "2", "a":假,“b”:“”,“c”:“”,“d”:真},{“计数”:“3”,“a”:假,“b”:“”,“c”:“ ", "d": 真 } ]
可能吗?先感谢您。
java - 在 Java 中使用 JSONata 会引发异常
我正在尝试JSONata
在java
.
步骤:包含Jsonata.js
在类路径中。
调用:
参考链接: 如何在 Java 中使用 JSONata?
当我尝试使用它时,我得到以下异常:
引起:jdk.nashorn.internal.runtime.ParserException::1445:12 预期(但发现函数评估(expr,输入,环境){
在 jdk.nashorn.internal.parser.AbstractParser.error(AbstractParser.java:294) 在 jdk.nashorn.internal.parser.AbstractParser.error(AbstractParser.java:279) 在 jdk.nashorn.internal.parser.AbstractParser.expectDontAdvance (AbstractParser.java:350) 在 jdk.nashorn.internal.parser.AbstractParser.expect(AbstractParser.java:337) 在 jdk.nashorn.internal.parser.Parser.functionExpression(Parser.java:2654) 在 jdk.nashorn。 internal.parser.Parser.statement(Parser.java:875) 在 jdk.nashorn.internal.parser.Parser.sourceElements(Parser.java:773) 在 jdk.nashorn.internal.parser.Parser.functionBody(Parser.java: 2901) 在 jdk.nashorn.internal.parser.Parser.functionExpression(Parser.java:2663) 在 jdk.nashorn.internal.parser.Parser.memberExpression(Parser.java:2506) 在 jdk.nashorn.internal.parser.Parser .leftHandSideExpression(Parser.java:第2372章.primaryExpression(Parser.java:1992) 在 jdk.nashorn.internal.parser.Parser.memberExpression(Parser.java:2511) 在 jdk.nashorn.internal.parser.Parser.leftHandSideExpression(Parser.java:2372) 在 jdk。 nashorn.internal.parser.Parser.unaryExpression(Parser.java:3147) 在 jdk.nashorn.internal.parser.Parser.assignmentExpression(Parser.java:3353) 在 jdk.nashorn.internal.parser.Parser.variableStatement(Parser. java:1088) 在 jdk.nashorn.internal.parser.Parser.statement(Parser.java:884) 在 jdk.nashorn.internal.parser.Parser.sourceElements(Parser.java:773) 在 jdk.nashorn.internal.parser .Parser.program(Parser.java:709) 在 jdk.nashorn.internal.parser。Parser.parse(Parser.java:283) 在 jdk.nashorn.internal.parser.Parser.parse(Parser.java:249) 在 jdk.nashorn.internal.runtime.Context.compile(Context.java:1284) 在 jdk .nashorn.internal.runtime.Context.compileScript(Context.java:1251) 在 jdk.nashorn.internal.runtime.Context.compileScript(Context.java:627) 在 jdk.nashorn.api.scripting.NashornScriptEngine.compileImpl(NashornScriptEngine .java:535) ... 6 更多
有关如何使用它的任何帮助都会很有用。
java - 如何在 JSONata 中迭代基元数组
我想知道如何迭代一个基元数组,例如 int 数组,或者它是否是一个简单的字符串数组。
我想迭代数组并做这样的事情:
我如何使用 JSONata 来做到这一点?
任何帮助将不胜感激!
javascript - JSONata 可以在 Internet Explorer 中使用吗?
我正在为前端使用 javascript 做一个 web 项目,我正在使用 JSONata 来解析服务器返回的传入 JSON 对象。它在所有浏览器上都运行良好,但在 Internet Explorer 中无法识别 JSONata。
它只是在控制台中说:'jsonata'未定义。
JSONata 可以在 Internet Explorer 中使用吗?或者我需要做什么才能让 JSONata 在 Internet Explorer 中工作?
javascript - 在 Internet Explorer 中运行 JSONata
我正在为前端的 javascript 和后端的 java 做一个项目。我正在使用 JSONata 在前端解析传入的 json(这很棒)。它适用于除 Internet Explorer 之外的所有浏览器。
代码基本上是(我使用 JSONata 的地方):
这在所有浏览器中都没有问题,除了我收到以下错误的 Internet Explorer:
JSONata 不适合 Internet Explorer 吗?还是有办法绕过这个?
另外,我想如果我不能在客户端运行它,我会在服务器上运行 JSONata,所以我尝试了这段代码:
我收到以下错误:
PD:我正在使用 jsonata.js(来自他们的网站:https ://github.com/jsonata-js/jsonata/blob/master/jsonata.js )
如何运行 JSONata 以便它在所有浏览器中兼容(特别是在 Internet Explorer 中)
非常感谢!
javascript - Javascript 抛出“ReferenceError:未定义要求”
我正在使用该库在我的 Python 代码中运行一段 Javascript 代码js2py
。它适用于抛出的各种 Javascript 代码并处理结果。但是当在 Javascript 中使用“require”关键字时遇到错误代码。下面是我的代码
这里的jsonata是一个用于解析通过 npm 安装的 JSON 的 javascript 库。
以下是我收到的错误
但是,当我只将 javascript 代码放在一个文件中并从命令行运行它时,它就可以工作了。
jstest.js
在命令行中
现在我对错误进行了一些调查,结果发现'require'是浏览器要求,而不是node.js
. 事实证明,还有一个替代方法require.js
可以解决这个问题。所以我去了他们的文档,但对如何在我的 Javascript 代码中定义require没有太多意义。另外我将 jsonata 作为参数传递给require which是一个.js文件。与示例中给出的函数声明相反,我如何使用require.js
框架来处理 jsonata.js 文件?我对这个主题的理解可能有误,但我需要对此进行澄清?有有什么办法可以使这项工作?
注意:我在服务器端运行代码。
jsonata - JSONata,从嵌套对象中提取数据
我是 JSONata 的新手,所以我仍然对它有所了解。我需要从嵌套对象中提取数据,例如:
...我需要用它的“信息”提取列表数据,但没有信息键。所以结果看起来像:
我一直在http://try.jsonata.org/上闲逛,可以看到这个库有多么强大,但到目前为止还没有成功实现这个目标。任何和所有的帮助表示赞赏:)。
jsonata - JSONata 查询以展平数组数组
JSONata 文档“top-level-arrays-nested-arrays-and-array-flattening”涵盖了对象数组的“扁平化”情况,每个对象都包含一个包含数组值的属性。
但是,我无法弄清楚如何展平数组。
问:什么是 JSONata 查询来展平数组?
输入
想要的