Tag: underscore.js

如何从Node.js中的数组中删除特定的值

我有一个值的数组 var test =[]; test [1] = [ {"myself":true,chat_user:11,"message":"Hi"}, {"myself":true,chat_user:11,"message":"Evida"}, {"myself":false,chat_user:11,"message":"yes"}, ] test [6] = [ {"myself":true,chat_user:13,"message":"Hi"}, {"myself":true,chat_user:13,"message":"Evida"}, {"myself":false,chat_user:13,"message":"yes"}, ] test [9] = [ {"myself":true,chat_user:22,"message":"Hi"}, {"myself":true,chat_user:22,"message":"Evida"}, {"myself":false,chat_user:22,"message":"yes"}, ] 现在我必须删除入口testing[6],需要得到剩余的数组 即 test [1] = [ {"myself":true,chat_user:11,"message":"Hi"}, {"myself":true,chat_user:11,"message":"Evida"}, {"myself":false,chat_user:11,"message":"yes"}, ] test [9] = [ {"myself":true,chat_user:22,"message":"Hi"}, {"myself":true,chat_user:22,"message":"Evida"}, {"myself":false,chat_user:22,"message":"yes"}, ] 有没有在节点js的function,为此? 提前致谢

为什么我似乎不能将普通对象合并到Mongo文档中?

我有一个来自第三方服务器的数据馈送,我正在将其转换为JSON。 数据馈送将永远不会有我的mongoDB的自动生成的_id s,但有一个唯一的标识符vehicle_id 。 下面的函数是处理如果存在具有相同vehicle_id的mongo文档,那么处理数据馈送生成的json对象fresh_event_obj并将其值复制到mongo文档中。 function update_vehicle(fresh_event_obj) { console.log("Updating Vehicle " + fresh_event_obj.vehicleID + "…"); Vehicle.find({ vehicleID: fresh_event_obj.vehicleID }, function (err, event_obj) { if (err) { handle_error(err); } else { var updated = _.merge(event_obj[0], fresh_event_obj); updated.save(function (err) { if (err) { handle_error(err) } else { console.log("Vehicle Updated"); } }); } }); } event_obj[0]和fresh_event_obj的结构是相同的,除了event_obj[0]具有_id和__v而“普通”对象没有。 当我运行_.merge这两个,甚至我自己的recursion函数,只是将值从后者复制到前者,尽pipefresh_event_obj具有所有新值,但updated对象中没有任何内容与event_obj[0]不同。 有没有人有任何想法我做错了? […]

帆js模板jst.js错误找不到variables_

我是编程和学习JavaScript和Sails JS的新手。 我很喜欢它,但遇到了一个我不明白的问题。 原谅我,如果我使用了错误的术语,我没有编程背景。 我运行在Sails v0.12.1(干净安装)和OSX上(如果这很重要) In / assets / templates我创build了一个名为“testTemplate.ejs”的模板文件。 其中只包含一个带简单文本的h3标签: <h3>This is the template</h3> 在我的/assets/js/app.js中,我有一个简单的jQuery“调用”来在我的客户端页面插入模板: $('tr:last').after( JST['assets/templates/testTemplate.ejs'](obj) ); 到现在为止还挺好。 我的应用程序可以在所有的视图上正常工作,但是到达这一点时会显示一个错误。 错误告诉我,它找不到位于/jst.js中第一个__t(第4行)的variables“_”: this["JST"] = this["JST"] || {}; this["JST"]["assets/templates/addUser.ejs"] = function(obj) { obj || (obj = {}); var __t, __p = '', __e = _.escape; with (obj) { __p += '<h3>Dit is de template</h3>'; } […]

如何使用javascript或lodash重新排列对象属性的数组

我有我要写入Excel文件的对象数组。 我有很多像这样的对象的数组 [{'FirstName':'abc','Reg-no':1234,'branch':'mech','ReportDate':'11/12/2014','LastName':'HR'},{'FirstName':'xyz','Reg-no':1235,'branch':'CS','ReportDate':'11/12/2015','LastName':'BC'},{'FirstName':'pqr','Reg-no':1236,'branch':'IS','ReportDate':'11/12/2016','LastName':'TY'}] 我想重新排列这样的对象属性,以便在Excel First列中从注册编号开始 [{'Reg-no':1234,'ReportDate':'11/12/2014','FirstName':'abc','LastName':'HR','branch':'mech'}, {'Reg-no':1235,'ReportDate':'11/12/2015','FirstName':'xyz','LastName':'BC','branch':'CS'}, {'Reg-no':1236,'ReportDate':'11/12/2016','FirstName':'pqr','LastName':'TY','branch':'IS'} ] 有人能帮助我吗?

具有快速,静态dirname的Nodejs

我目前正在使用node.js,express和underscoreJS来开发一个web应用程序。 我试图了解我是否使用这个差异: app.use(express.static(__dirname + '/public')); 应用程序似乎更快,但我不确定我完全理解这个意思。 除了意思之外,如果我想在我的电脑上使用它进行testing,当我尝试使用localhost:xxxx(xxxx作为端口)的应用程序时,它不起作用,我最终得到一个enoent错误,但它工作罚款在服务器上,任何想法为什么? 对不起,如果这个问题看起来很愚蠢,我只是被分配到这个项目,我到达之前已经做了很多工作。

用固定键将单个对象的值排列成对象数组

我有一个对象 { key1:'val1', key2:'val2', key3:'val3', key4:'val4' } 我需要将其转换为以下内容: [ {key:'val1'}, {key:'val2'}, {key:'val3'}, {key:'val4'} ] 最终对象的key是固定的。 我如何使用lodash或下划线来做到这一点? 我知道我可以使用_.values ,然后forEach ,但不知何故,感觉不对。

检查一个对象是否为空并且属性未定义

我试图检查下面, USECASE: 1 var obj = {}; _.isEmpty(obj); ====> returns true USECASE: 2 var obj = { model: undefined, vendor: undefined, type: undefined } _.isEmpty(obj); ====> returns false 在用例2中是否还有其他函数可以用来返回true,因为所有的属性都是未定义的。 我提到这个http://www.ericfeminella.com/blog/2012/08/18/determining-if-an-object-is-empty-with-underscore-lo-dash/,但不知道如何实现它,而无需修改本地方法。

JSLint,全局禁用规则

如果我通过NPM全局安装JSLint,有没有办法在我的应用程序的当前范围内或者在我的系统上全局禁用某些规则? 主要问题是悬而未决的下划线问题。 我的意思是,这个主要的地方出现在node.js当我使用__dirname,但我相信它会出现underscorejs以及。 我已经用jslint指令忽略了它,但是我觉得在我使用下划线的每个文件上需要这样做是有点麻烦的。 对于这个问题,我需要把“严格使用”; 在每个文件的顶部?

underscore.js with consolidate.js:如何更改templateSettings?

我在Node.js上使用Express.js,并用“ {{}} ”括号标记参数位置,但下划线默认使用“ <%%> ”。 app.engine('html', cons.underscore); // set .html as the default extension app.set('view engine', 'html'); app.set('views', __dirname + '/views'); 在我调用render方法之前,何时以及如何更改templateSettings.interpolate以在模板中包含“ {{}} ”括号?

通过键下划线聚集哈希

我在机器学习应用程序上工作。 当我需要使用数组和哈希运算时,我使用underscorejs。 问题在于,ML中有一个交叉validation的方法,当你需要计算性能的几倍。 对于每一个折叠,我有一个哈希的性能参数,如下所示 { 'F1': 0.8, 'Precision': 0.7, 'Recall':0.9 } 我把所有的哈希都推送到数组中,最后我有一组哈希,就像下面这样 [ { 'F1': 0.8, 'Precision': 0.7, 'Recall':0.9 }, { 'F1': 0.5, 'Precision': 0.6, 'Recall':0.4 }, { 'F1': 0.4, 'Precision': 0.3, 'Recall':0.4 } ] 问题是,最后我想计算散列的每个参数的平均值,即我想根据参数对所有散列进行总结,然后将每个参数除以折叠的数量,在我的情况3中。 如果有任何优雅的方式来做下划线和JavaScript? 一个重要的一点是有时候我需要做这个聚合,当这样的哈希像下面这样折叠 { label1:{ 'F1': 0.8, 'Precision': 0.7, 'Recall':0.9 }, label2:{ 'F1': 0.8, 'Precision': 0.7, 'Recall':0.9 }, … } […]