Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于JSON缩小的UglifyJs JavaScript API?_Javascript_Json_Node.js_Minify_Uglifyjs2 - Fatal编程技术网

用于JSON缩小的UglifyJs JavaScript API?

用于JSON缩小的UglifyJs JavaScript API?,javascript,json,node.js,minify,uglifyjs2,Javascript,Json,Node.js,Minify,Uglifyjs2,因此,我通过节点在目录中循环浏览文件,并希望使用UglifyJs缩小它们 对于JavaScript文件,API非常简单: var UglifyJS = require("uglify-js") // Looping here UglifyJS.minify(listOfAllFiles[i]) 但是,我需要缩小的文件是JSON文件,因此这会产生一个eval错误。在命令行中,如果要缩小JSON,只需传递--expr,它将作为单个表达式进行计算。知道如何将其传递到JavaScript API的o

因此,我通过节点在目录中循环浏览文件,并希望使用UglifyJs缩小它们

对于JavaScript文件,API非常简单:

var UglifyJS = require("uglify-js")

// Looping here
UglifyJS.minify(listOfAllFiles[i])
但是,我需要缩小的文件是JSON文件,因此这会产生一个eval错误。在命令行中,如果要缩小JSON,只需传递
--expr
,它将作为单个表达式进行计算。知道如何将其传递到JavaScript API的options对象中吗


干杯。

如果你不是一成不变地使用UglifyJS,你可以用普通JavaScript解决这个问题,因为JSON并没有那么丑。要删除所有空白,请使用:

JSON.stringify(JSON.parse(listOfAllFiles[i]))

(假设
listOfAllFiles[i]
是JSON字符串。)

UglifyJS不会缩小JSON

您可以改为使用缩小


与其他人所说的相反,JSON缩小是有用的,因为它允许您在JSON中使用注释(在.JSON文件中不允许使用注释)。

JSON=/=JavaScript。语法不同。JSON几乎没有什么可以缩小的地方,甚至可以删除空白。正如我明确指出的,UglifyJs支持JSON缩小。我在它的中没有看到任何
expr
参数。看一看。我更新了一些标记。啊,非常有用!这确实会达到目的,而且非常简单。