Articles of 对象

使用feathersjs创build后无法从对象中删除_id字段

我想在插入数据后在我的节点应用程序中修改我的hook.data对象。 其实我不能。 create: [function(hook, next) { delete hook.data._id; hook.data = { problem: hook.data } postJson(hook.app.get('jsprintUrl'), hook.data) .then(data =>{ hook.result = data; next() }) }] 结果:仍然存在_id { "_id": "59ca334e7bc4e06b140aadf9", "algorithm": [ { "name": "SA" } ] }

在所有Node应用程序上扩展Object.prototype.myNewMethod

我刚刚开始在NodeJs,所以我不知道这是否是一个很好的做法,对不起 我有我的对象实现添加一个合并方法,我创build的所有对象,所以我可以合并到一个不同的对象。 Object.prototype.merge = function(source){ //…my code here return this; } 所以我想知道如何让我的Node应用程序中的所有模块都可用? 我已经阅读了这本优秀的书 ,我可以为它创build一个模块 ,然后调用utils.merge(obj1, obj2) 。 但即使如此,我宁愿继续使用我的对象的实现,而只是调用obj1.merge(obj2) 有没有办法做到这一点? 提前致谢

我不能用对象来查询mongoose吗?

在使用mongoose查询时,我使用对象作为标准时遇到问题。 var id = { cid: 111, vid: 222, pid: 333 }; // the following doesn't work at all Category.find({id: id}, function(err, docs) { //—-returns nothing. }); // while Category.find({'id.pid': id.pid, 'id.cid': id.cid,'id.vid': id.vid}, function(err, docs) { //—-returns some docs. }); // does work` 这是一个问题还是一个特征?

为什么我的JS循环覆盖在我的对象以前的条目?

所以我有一个对象,我在nodejs中使用。 它看起来像这样: for(var i = 0; i < x.length; i++) { var sUser = x[i]; mUsers[sUser.userid] = CreateUser(sUser); ++mUsers.length; } 所以我从外部来源提取信息,并将其分解为一个数组,其中包含了这个实例: [{ name: 'Michael Lovesllamas Lankford', created: 1338420951.11, laptop: 'pc', laptop_version: null, userid: '4fc6aed7eb35c14ad6000057', acl: 0, fans: 1, points: 5, avatarid: 34 }] 等等。 所以信息在上面的函数中作为x传递。 global.mUsers = {length:0} global.UserBase = { userid: -1, name: "noidea", […]

如何访问nodejs插件中的包装对象属性

我在javascript中有以下代码: var c = new addon.Component(); c.ComponentLength = 3 我应该如何build立我的插件,所以我可以做以前的代码? 我已经按照http://nodejs.org/api/addons.html中的教程,但我卡在这里。 这可能吗? 有没有人有办法解决吗? 提前致谢。

JavaScript对象按字母顺序排列

这里是我正在构build的一个Node Webkit Web包装器的摘录,我遇到了一个问题。 请参阅下面的<—-行。 get_columns是一个简单的JavaScript数组: ['id','group_name','description'] 但是当它们从数据库中出来时,对象(也就是results.rows.item(i) ): {'description','group_name','id'} 这是因为浏览器或JavaScript想按字母顺序排列所有对象吗? db.transaction(function(tx) { var sql = 'SELECT ' + get_columns + ' FROM ' + table; tx.executeSql(sql, [], function(tx, results) { if (results.rows.length) { for (var i = 0; i < results.rows.length; i++) { _data.push(results.rows.item(i)); // <—- columns from WebSQL are in alphabetical order, so not […]

用mongoose在一个对象数组中插入一个唯一的对象

我用mongoose在对象数组中插入一个对象。 我的对象是这样的: name: { type: String, unique: true, required: true }, translations: [{ tag: { type: String, unique: true, required: true }, meaning: { type: String, required: true } }] 我想我的代码抛出一个错误,当已经有一个对象在“翻译”具有相同的“标签”值。 我目前正在这样做: Language.update( {name: languageName}, {$addToSet: { 'translations': { tag: aNewTag, meaning: aNewTranslation }}}, { upsert: false }, function(err) { if (err) console.log(err); else console.log('This […]

NodeJS从基于自定义模块的匿名函数中获取对象

我第一次尝试NodeJS和这个服务器是真棒,但我有一个小问题,我不明白我在做什么错:( 我有两个文件:server.js和rules.js rules.js阅读rules.html必须将他的内容返回到像这样的对象: {'title':'Title','msg':'<div id="test">[…]</div>'} Rules.js exports.getRule = function(data) { var fs = require('fs'); var rulesPath = __dirname + '/views/rules.html'; fs.readFile(rulesPath, {encoding:'utf-8'}, function(error, data) { if(!error){ var rules = {"title":"Règles du chat","msg":data}; } else { var rules = {"title":"Erreur lors de la récupèration des règles du chat","msg":"<div id=\"error\">Une ereur s'est produite lors de la récupération […]

在Node.js中创build一个模块的副本,而不是一个实例

这将是我在stackoverflow上的第一个问题,希望这个顺利。 我一直在做一个游戏(使用corona SDK),我使用Node.js编写了一个小型服务器来处理我的客户端之间的一些聊天消息,没有问题。 现在我正在扩大这个servlets器来做更多,我想要做的是创build一个外部文件(模块),将持有一个对象,具有所有的function和variables,我需要代表一个房间我的游戏“大厅”,有两个人可以相互对打,每次我有两个玩家准备玩,我会为他们创build一个空房间的副本,然后在那个房间初始化游戏。 所以我在我的主项目文件中有一个数组,每个单元格都是一个房间,我的计划是将模块导入该数组,然后我可以在特定的“房间”中初始化游戏,玩家将玩,游戏会继续下去,一切都会好的…但是…我在main.js中的代码: var new_game_obj = require('./room.js'); games[room_id] = new_game_obj(); games[room_id].users = [user1_name,user2_name]; 现在,在我的房间里,我有这样的东西: var game_logistics = {}; game_logistics.users = new Array(); game_logistics.return_users_count = function(){ return game_logistics.users.length; } module.exports = function() { return game_logistics; } 到目前为止这么好,这工作就好,我可以简单地去: games[room_id].return_users_count() 我会得到0或1或2,这当然取决于有多less用户join了这个房间。 一旦我打开一个新的房间,问题就开始了,因为Node.js会将我创build的模块实例化,而不是复制它,如果我现在创build一个新房间,即使我删除和/或删除旧房间,它会提供我已经更新的旧房间的所有信息,而不是一个新的洁净室。 例: var new_game_obj = require('./room.js'); games["room_1"] = new_game_obj(); games["room_2"] = new_game_obj(); games["room_1"].users = ["yuval","lahav"]; […]

Ajax /套接字:javascript数组对象的属性丢失

在Javascript中,数组[]也可以具有属性,因为它是一个对象。 但是,如果您通过ajax / socket.io将此对象发送到服务器,则数组内容保留,但其属性会丢失。 例如: var arr = ['john','peter']; arr.a = 1; console.log(arr.a); // 1 在通过ajax发送这个对象之后,服务器看到的是: console.log(arr.a); // undefined 有谁知道为什么? 我使用Node.JS服务器btw,谢谢!