Articles of json

使用Nodejs的csvtojson转换会产生乱码数据

我想转换一个csv文件到json使用csvtojson转换器nodejs.My代码如下所示。 我得到如下所示的数据输出。 我不知道为什么会发生这种情况,以及如何防止这种情况发生。 var Converter = require("csvtojson").Converter; var fileStream = fs.createReadStream("input.csv"); var converter = new Converter({constructResult:false}); converter.on("end_parsed", function (jsonObj) { var jsonfile = require('jsonfile'); var file = 'output.json'; jsonfile.writeFile(file, jsonObj, function (err) { console.error(err); });}); fileStream.pipe(converter); {“\ \ \0000000000000000c \ \ u \ \:::::::::::::::::::::{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{ u0000e \ u0000c \ u00000a \ u0000e \ u0000e \ u0000r […]

在对象上调用JSON.stringify时,NPM'should'库会导致循环引用错误

现在我知道为什么我要避免像修改对象原型那样的库 它看起来像我得到这个错误: TypeError: Converting circular structure to JSON 当我require('should') 这是预期的吗? 在调用JSON.stringify之前,我可以从要被string化的对象中删除属性,如下所示: delete obj.should; delete obj.getShould; 但是这很难做到嵌套的对象等。我不得不说,这是非常跛脚,应该导致这一点,但也许我做错了什么。 如何解决这个问题? 我正在写一个库,用户可能require('should')所以我必须防止这种types的问题。

从json拉一个深层的财产,而不使用lodash得到

所以我们有一个样本json { "name": "app", "version": "0.1.0", "description": "Sample description", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "repository": { "type": "git", "url": "some git url" }, "keywords": [ "node" ], "author": "Anonymous", "license": "ISC" } 这里是我们的node.js脚本 var obj = require('./package.json'); console.log(obj[process.argv[2]]); 当我执行node getval.js version ,它的作品。 但是,当我执行node getval.js repository.url ,我得到未定义。 当我将代码更改为下面的代码时,它可以工作。 但是,我不想对关键值进行硬编码 […]

我怎样才能从npm脚本pipe道到bash别名?

我有一个别名在我的.bashrc为bunyan: $ alias bsh alias bsh='bunyan -o short' 这行在bash中运行正常: $ coffee src/index.coffee | bsh 但是如果我把同样的东西放在'脚本' "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "coffee":"coffee src/index.coffee | bsh" }, 和npm run coffee ,它失败了: > coffee src/index.coffee | bsh sh: bsh: command not found events.js:141 throw er; // Unhandled 'error' event ^ Error: write […]

在JADE模板引擎上parsing数组

我正在使用ExpressJS的JADE模板引擎。 将这个数组发送到JADE模板 var data = { "labels" : ["Label 1", "Label 2"] }; res.render('index', {data: data}); 我的JADE文件如下所示: script(type='text/javascript'). var options = { labels: [#{data.labels}], … }; 正如你所看到的,我试图获取data.labels值来内联我的JADE文件的<script>块。 但输出是这样的: <script type="…"> var options = { labels: [Label 1, Label 2], <– invalid syntax … }; 它一定是这样的: <script type="…"> var options = { labels: ["Label 1", "Label […]

在node.js中转换JSON

我试图转换这个 [ { "_id": "57760ecef5e7478c1e46b892" }, { "_id": "57760f56f5e7478c1e46b896" }, { "_id": "57760f7df5e7478c1e46b89a" } ] 对此 "_id" : [ "57760ecef5e7478c1e46b892", "57760f56f5e7478c1e46b896", "57760f7df5e7478c1e46b89a" ] 通过代码。 我对node.js的世界比较陌生,所以我不知道要search什么。

可能在这个对象中合并? (JavaScript的)

是否有可能(如果有的话)如何合并具有相同值的标签,以便一个标签有一个所有画廊的数组? 例如,从这开始: [{ tag: "Kings", galleries: [ "2016 Kings Draft Night" ] }, { tag: "Draft", galleries: [ "2016 Kings Draft Night" ] }, { tag: "Kings", galleries: [ "2016-17 Sacramento Kings Uniforms" ] }] 并以此结束: [{ tag: "Kings", galleries: [ "2016 Kings Draft Night", "2016-17 Sacramento Kings Uniforms" ] }, { tag: "Draft", galleries: […]

如何在mongodb中创builddynamic文档键

我的问题包括创build一个dynamic字段和应该由用户input的未定义名称的集合。 所以我尝试使用variables,但它不工作。 这是代码 insertData_dynamic_colone : function(collection) { var colone1 = "prod"; var colone2 = "prod2"; dbObject.collection(collection).insertOne({ colone1 : "14", colone2 : "15" }, function(err, result) { assert.equal(err, null); }); }, 所以在我得到的数据库 > db.colone_dynamic.find() { "_id" : ObjectId("579af3c4f41e03f0362a5170"), "colone1" : "14", "colone2" : "15" } 但我期待得到 > db.colone_dynamic.find() { "_id" : ObjectId("579af3c4f41e03f0362a5170"), "prod" : "14", "prod2" […]

search最大的id并在JSON文件(NodeJS)中添加新的最大ID

在执行插入操作时,我试图将下一个最大的ID添加到JSON文件中。 事情是,当我有例如身份证:13,它使新的对象与ID:14和重写旧的对象与ID:14,之后,我有2个对象具有相同的ID。 我错了什么? fs.readFile("DB.json", "utf8", function (err, data) { var jsonFileArr = []; // DB.json objects jsonFileArr = JSON.parse(data); function maxValue(jsonFileArr, prop) { // Searches for the biggest numbers in DB.json var max = ""; for (var i = 0; i < jsonFileArr.length ; i++) { if (!max || parseInt(jsonFileArr[i][prop]) > parseInt(max[prop])) max = jsonFileArr[i]; […]

如何使nodejs服务器asynchronous

我有一个nodeJS服务器,它从三个网站获取JSON并将其发送到我的网站(以JSON格式)显示。 我正在使用的网站上的JSON不断更新,每10秒钟一次。 我怎样才能使我的NodeJS服务器不断更新,使其具有最新的数据? 我假设这是不可能刷新页面,但它是最好的,如果页面不刷新。 如果NodeJS不可能做到这一点,并且有一个不同的方法来完成这个,如果你告诉我,我会非常感激。 码: router.get("/", function(req, res){ var request = require('request-promise'); var data1; var data2; var data3; request("website1.json").then(function(body){ data1 = JSON.parse(body); return request("website2.json"); }) .then(function(body) { data2 = JSON.parse(body); return request("website3.json"); }) .then(function(body){ data3 = JSON.parse(body); res.render("app.ejs", {data1: data1, data2: data2, data3: data3}); }) });