如何通过 "V8" 包在 R 语言中使用 Javascript 库?
How can I use Javascript library in R language via "V8" packages?
我想在 R 语言中使用 RiTa.js,但我的代码没有加载正确的库。我该如何解决?
脚本
library(V8)
ct <- v8()
ct$source("https://cdnjs.cloudflare.com/ajax/libs/rita/1.1.51/rita-full.js")
ct$eval("var s = 'it was a dark and stormy night.';")
ct$eval("var r = new RiString(s);")
结果
Error in context_eval(join(src), private$context) : ReferenceError: RiString is not defined
我想你只需要稍微调整一下就可以了运行。 RiTa JavaScript 预计在 window
可用的浏览器中。 R V8
中的默认值是 global
。幸运的是我们可以很容易地用 global="window"
参数来改变。
library(V8)
ctx <- v8(global="window")
ctx$source("https://cdnjs.cloudflare.com/ajax/libs/rita/1.1.51/rita-full.js")
ctx$get("Object.keys(window)")
您现在应该可以看到所有可用的 RiTa.js。
[1] "console" "print" "window" "ArrayBuffer"
[5] "Int8Array" "Uint8Array" "Int16Array" "Uint16Array"
[9] "Int32Array" "Uint32Array" "Float32Array" "Float64Array"
[13] "DataView" "_RiTa_LTS" "RiTa" "RiString"
[17] "RiGrammar" "RiMarkov" "RiWordNet" "RiLexicon"
[21] "RiTaEvent"
我想在 R 语言中使用 RiTa.js,但我的代码没有加载正确的库。我该如何解决?
脚本
library(V8)
ct <- v8()
ct$source("https://cdnjs.cloudflare.com/ajax/libs/rita/1.1.51/rita-full.js")
ct$eval("var s = 'it was a dark and stormy night.';")
ct$eval("var r = new RiString(s);")
结果
Error in context_eval(join(src), private$context) : ReferenceError: RiString is not defined
我想你只需要稍微调整一下就可以了运行。 RiTa JavaScript 预计在 window
可用的浏览器中。 R V8
中的默认值是 global
。幸运的是我们可以很容易地用 global="window"
参数来改变。
library(V8)
ctx <- v8(global="window")
ctx$source("https://cdnjs.cloudflare.com/ajax/libs/rita/1.1.51/rita-full.js")
ctx$get("Object.keys(window)")
您现在应该可以看到所有可用的 RiTa.js。
[1] "console" "print" "window" "ArrayBuffer"
[5] "Int8Array" "Uint8Array" "Int16Array" "Uint16Array"
[9] "Int32Array" "Uint32Array" "Float32Array" "Float64Array"
[13] "DataView" "_RiTa_LTS" "RiTa" "RiString"
[17] "RiGrammar" "RiMarkov" "RiWordNet" "RiLexicon"
[21] "RiTaEvent"