Tag: 对象

MongoDB – 如何访问数组中的对象

我无法用文字来形容我的想法,所以这里是一个例子: [ { 'description': 'fruits', 'examples': [ { 'name': 'Apple', 'color': ['red', 'green'] }, { 'name': 'Banana', 'color': 'yellow' } ] }, { 'description': 'vegetables', 'examples': [ { 'name': 'Tomato', 'color': 'red' }, { 'name': 'Carrot', 'color': 'orange' } ] }, { 'description': 'Wweets', 'examples': [ { 'name': 'Chocolate', 'color': ['brown', 'black', 'white'] }, { […]

如何访问node.js中的对象的成员

我对node.js真的很陌生,并且对象有点问题。 比方说,我有两个文件,一个叫printer.js,另一个叫database.js。 printer.js打印结果数据库返回。 printer.js看起来像这样: var db = require("./database") db.getStations(dbReturn); function dbReturn(stations) { for(var i = 0; i < stations.length; i++) { console.log('id: ' + stations.id); } } 和我的database.js看起来像这样: function getStations(callback){ var listOfStations = []; for(var index = 0; index < 10; index++) { var station = new Station(index); listOfStations[index] = station; } callback(listOfStations); } function […]

V8 JavaScript对象与二叉树

有没有更快的方式来searchJavaScript数据(特别是在V8通过node.js ,但没有C / C + +模块)比使用JavaScript Object ? 这可能已经过时了,但是它表明每个属性都会dynamic生成一个新的类。 这让我想知道二叉树的实现是否会更快,但是这似乎并不是这样 。 二叉树的实现不是很好的平衡,所以平衡可能会变得更好(只有前26个值大致用手来平衡)。 有没有人有一个想法,为什么或如何改善? 另一个说明:dynamic类的概念是否意味着实际上有约26万个属性(在第二个链接的jsperf基准testing中),并且随后在内存中保留了dynamic类定义链?

如何通过在Node中的另一个对象中的位置来获取对象的值

在一个脚本中,我有一个包含其他几个对象的对象,都具有相同的结构。 它看起来像这样: wordlist = {word1: {count:2}, word2: {count:5}, word3: {count:3}, word4: {count:2}} 我想生成一个数组,每个单词的计数,所以它看起来像[2,5,3,2]。 有什么办法可以在Node.js中做到这一点? 我会想象使用for循环每次迭代到下一个子对象,但我将如何通过它在主对象中的位置来select子对象? 在一个数组中,你可以键入arrayName [2]来获得该数组中的第三个条目,是一个类似的东西可能与一个对象?

从对象属性recursion地生成文件path

我正在使用node.js和作为一个副项目,我创build一个模块,读取一个.json文件,parsing它,然后创build基于object properties和object values目录结构。 对象属性(keys)将是它自己的path/文件和对象值将是该path的文件列表 我试图通过对象递减递减,但我不知道如何从每个对象的最内层对象中提取path 同样,对象将是由用户创build的dynamic的。 var path = 'c:/templates/<angular-app>'; var template = { //outline of 'angular-app' src:{ jade:['main.jade'], scripts:{ modules:{ render:['index.js'], winodws:['index.js'], header:['header.js' ,'controller.js'], SCSS:['index.scss' ,'setup.scss'], } } }, compiled:['angular.js','angular-material.js' ,'fallback.js'], built:{ frontEnd:[],//if the array is empty then create the path anyways backEnd:[], assets:{ fontAwesome:['font-awesome.css'], img:[], svg:[] } } } //desired result… let out […]

在NodeJS中使用redis创build唯一的哈希键

我为node.js使用node_redis客户端。 我有一个结构化的数据,我目前正试图存储在redis中。 每当我尝试将更多的键值添加到同一个集合,它会覆盖。 我正在追逐它几天,我发现我必须添加独特的成员,然后我可以根据他们添加数据。 我通过在用户级别定义唯一键来完成这一部分,但是我想用公司和用户名组合来创build散列键,以便它在云中运行时始终是唯一的。 数据在我的jsonMessage { "Company": "ABC", "Users": [ { "Username": "john@gmail.com", "Authenticated": false }, { "Username": "chris@gmail.com", "Authenticated": true }, { "Username": "shaun@hotmail.com", "Authenticated": true } ] } 我到目前为止所尝试的是: var message = JSON.parse(jsonMessage); message.Users.forEach(function(user,i){ redisClient.sadd("users", "user:" + i); redisClient.hmset("user:" + i, "Username", user.Username, "Authenticated", user.Authenticated); }); 我如何根据公司把我的数据。 我应该把我的公司,然后分别添加其用户,因为我有由多个公司组成的数据。 在redis中,公司和用户的确切关系应该是什么?

如何打破JavaScript的foreach循环?

我有一个对象mobile_specs有几个领域,如设备名称,品牌,相机。 我循环虽然mobile_specs对象,以便我可以以表格格式打印两个手机的规格: var i=0; Object.keys(mobile_specs).forEach(function(key) { if(i==5) { break; } var mobile1=mobile_specs.[key]; var mobile2=mobile_specs.[key]; alert(mobile1 + " " +mobile2); i++; }); 但是上面的代码给了我一个错误,那就是: Illegal break statement 当我= 5时,我怎样才能打破我的循环? 任何帮助表示赞赏。

如何将对象中的按键推送到数组?

假设我有以下对象obj : obj = { 'key1' : ['1','2','3'], 'key2' : ['1','2','9'], 'key3' : ['1','3','5'] } 我怎样才能将obj转换成如下所示的两个数组? allOfTheKeys = ['key1','key2','key3'] allOfTheArrays = ['1','2','3','5','9']

函数不在Object.keys或Object.getOwnPropertyNames下列出,但可以调用

假设有一些库javascript对象jsObj 。 在调用Object.keys或Object.getOwnPropertyNames ,我得到了一个属性列表 [a,b,c,d] 但是我仍然可以调用像jsObj.e()这样的函数。 为什么方法e不是Object.keys或Object.getOwnPropertyNames一部分? 他们是怎么做的? 在这里 ,它说Object.getOwnPropertyNames也会返回非枚举属性。 那么像上面那样的财产的特征是什么? 我正在使用opentok服务器端SDK。 使用下面的代码, var OpenTok = require('opentok'); var opentok = new OpenTok(config.tokbox.apiKey, config.tokbox.secret); console.log("opentok1", Object.getOwnPropertyNames(opentok)); prints -> // [ '_client', 'apiKey', 'apiSecret', 'apiUrl', 'startArchive', 'stopArchive', 'getArchive', 'deleteArchive', 'listArchives' ] console.log("opentok2", opentok.createSession); prints -> function (…){…}

对象声明:作为键的string是否有所作为?

JSON是Object Literal Notation的一个子集,在这里有一些关于stackoverflow的问题。 但我找不到我的具体问题的答案。 有什么区别吗? var obj = {keyName : "value"}; 和 var obj = {"keyName" : "value"}; 在JavaScript中?