Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung der Verwendung von JavaScript in der R-Sprache

Detaillierte Erläuterung der Verwendung von JavaScript in der R-Sprache

php是最好的语言
php是最好的语言Original
2018-08-04 09:16:145437Durchsuche

Das js-Paket ist ein Tool zur Verwendung von JavaScript in R. Es implementiert Bindungen an mehrere gängige JavaScript-Bibliotheken und wird zum Kompilieren, Überprüfen, Neuformatieren, Optimieren und Analysieren von JavaScript-Code verwendet. Basierend auf dem V8-Paket können diese Bibliotheken aufgerufen werden

1 Überprüfen Sie, ob der JavaScript-Code in R syntaktisch korrekt ist

#js_typeof(),如果代码无效将引发SyntaxError,用于验证单个函数或对象
callback<-&#39;function test(x, y){var z = x*y ;return z;}&#39;
js_typeof(callback)  #&#39;function&#39;
js_typeof(&#39;function(x,y){return x + y}&#39;) #&#39;function&#39;
conf<-&#39;{foo : function(){},bar : 123}&#39;
js_typeof(conf) #&#39;object&#39;

#JavaScript程序验证:由JavaScript语句集合组成,用js_validate_script()函数
jscode<-readLines(system.file("js/uglify.min.js",package="js"),warn=FALSE)
js_validate_script(jscode) #TRUE
js_validate_script(&#39;function(x, y){return x + y}&#39;, error = FALSE) #FALSE不允许在全局范围内定义匿名函数

2. ESprima: Unterstützt ECMAScript2017 und gibt a zurück Angemessenes Syntaxbaumformat, standardisiert durch das ESTree-Projekt

esprima_tokenize(text,range=FALSE,loc=FALSE,comment=FALSE) #返回data.frame
text:JavaScript代码的字符向量,range:以0为基准注释每个标签的起始位置+结束位1:300,loc:注释每个标签起始行+起始列+终止行+终止列的位置,numeric类型

esprima_parse(text,jsx = FALSE,range = FALSE,loc = FALSE,tolerant = FALSE,tokens = FALSE,comment = FALSE) #返回&#39;JS_EVAL&#39;类型,解析成树形结构

3. Kompilieren von Coffeescript, Kompilieren von Coffeescript in JavaScript, der Code wird eins zu eins in äquivalentes JS kompiliert und die Coffeescript-Funktion ist an den Coffeescript-Cpmpiler gebunden

cat(coffee_compile("square = (x) -> x * x"))
cat(coffee_compile("square = (x) -> x * x",bare=T))

demo<-readLines(system.file("example/demo.coffee", package = "js"))
cat(demo, sep = "\n")
js<-coffee_compile(demo) #输出js脚本
cat(js)
uglify_optimize(js) #压缩js,将代码重写为更紧凑但等效的程序

4.uglify_reformat Neuformatierung, sehr gut geeignet zum Reparieren von Leerzeichen, Semikolons usw.

code <- "function test(x, y){x = x || 1; y = y || 1; return x*y;}"
cat(uglify_reformat(code, beautify = TRUE, indent_level = 2))

5.JSHint-Codeanalyse, erkennt automatisch Fehler und potenzielle Probleme im JavaScript-Code und gibt data.frame zurück

code <- "var foo = 123"
jshint(code)

Verwandte Artikel:

r-Sprache – wo Sie Lehrkurse zu R-Sprache, MySQL und Hadoop finden

Wie man R aufruft Sprache in PHP-Funktion, wie das Aufrufen einer Funktion in der C-Sprache

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Verwendung von JavaScript in der R-Sprache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn