Tag: 数组

将多个元素添加到所有相同的数组中

$ node > A = [0, 1, 23] [ 0, 1, 23 ] > B = A [ 0, 1, 23 ] > A.splice(0, 3) [ 0, 1, 23 ] > B [] > A [] > A = A.concat([1, 2]) [ 1, 2 ] > B [] 这是对的。 但是,在调用concat , B数组是否等于A ? 我知道有循环解决scheme,但还有什么其他的替代scheme可以在多个数组中添加多个相同的元素? 顺便说一句,我不想​​直接修改B […]

Node.js中的数组,如何使用它

我是networking编程的一个新手,甚至更多的Javascript,但我正在学习Node.js,我发现这个奇怪的错误…我有这样的代码: var structobject = function(type, title, isReplicable, isVisible) { this._type = type; this._title = title; this._childElements = new Array(); this._isReplicable = isReplicable; this._id = 0; //TODO }; structobject.prototype.addChild = function (element) { structobject._childElements.push(element); }; structobject.prototype.stringify = function () { console.log("Main element: "+this._title); for (var i=0;i<this._childElements.length;i++) { console.log("Child "+i+": "+this._childElements[i]._title); } }; structo1 = new structobject(1, […]

我怎样才能按字母顺序排列我的数组?

我正在使用node.js 我想按照他们的名字sorting这个数组,它有以下格式: [["Kingston upon Thames",36.9],["Croydon",36.8],["Bromley",40.1],["Hounslow",35.4],["Ealing",35.9],["Havering",40.3],["Hillingdon",36.2],["Harrow",37.9],["Brent",35.4],["Barnet",37.1],["Lambeth",34.2],["Southwark",34.1],["Lewisham",34.8],["Greenwich",34.9],["Bexley",38.9],["Enfield",36.1],["Waltham Forest",34.7],["Redbridge",35.7],["Sutton",38.6],["Richmond upon Thames",38.5],["Merton",36.4],["Wandsworth",34.8],["Hammersmith and Fulham",35.4],["Kensington and Chelsea",38.9],["Westminster",37.4],["Camden",36],["Tower Hamlets",31.2],["Islington",34.6],["Hackney",32.8],["Haringey",34.8],["Newham",31.7],["Barking and Dagenham",32.9],["City of London",41.9]] 我想把它分类为[“Barking and Dagenham”,32.9],[“Barnet”,37.1],[“Bexley”,38.9]等

基于对象创build一个数组

我有一个对象,其中的值是整数。 如:{猫:2,狗:1,鸟:4} 我想创build一个数组,其中对象中的键包含在数组中的次数与该值相同。 因此,在这种情况下:[猫,猫,狗,鸟,鸟,鸟,鸟 键将始终相同,但值可能为零。 我可以看到一种方法,我可以做到这一点 – 对于每个键我可以检索的价值,然后推单词数组的次数。 但是,这需要我的每个密钥(其中显着多于本例中)的几行代码。 我试过寻找更清洁的解决scheme,但没有运气。 有什么build议么?

频繁的文件读取与访问巨大的数组

我有一个从40000个单词的列表,我想随机使用Javascript(node.js)随机返回20-40个单词,来自客户端的请求。 每次从文件中读取它,或将它存储在一个数组中然后访问它会更好吗?

数组for each传递“push”作为参数

在JS面临奇怪的问题。 我收到此错误: let a = [] let b = [1,2,3] b.forEach(a.push) TypeError: Array.prototype.push called on null or undefined at Array.forEach (native) at repl:1:3 at REPLServer.defaultEval (repl.js:262:27) at bound (domain.js:287:14) at REPLServer.runBound [as eval] (domain.js:300:12) at REPLServer.<anonymous> (repl.js:431:12) at emitOne (events.js:82:20) at REPLServer.emit (events.js:169:7) at REPLServer.Interface._onLine (readline.js:211:10) at REPLServer.Interface._line (readline.js:550:8) 当然,我提出了一个build议,即上下文丢失了。 所以我试图通过这种方式来实现: b.forEach([].push.bind(a)) 结果变得不可预测: [ 1, […]

数组无法访问元素?

我正在玩亚马逊的alexa技巧,并试图写我自己的。 我有一个技能的一些元素的数组,但我不能访问的元素。 我相信我已经做了一切正确的事情,而且我已经使用了一点点,但似乎没有任何工作? var myArray = [ { "name" : "matt", "content" : "this is about matt" }, { "name" : "james", "content" : "this is about james" }, ]; 然后我有一些基于用户input的代码,使用名称作为查找器。 var requestedName = "matt"; var contentToRead = myArray.filter(function(v){ return v.name == requestedName; }); console.log("I'll read back, " + contentToRead.content); 上面的console.log是未定义的。 我试图parsing结果到一个数组,但我没有尝试似乎工作。 有任何想法吗? 我相信这是简单的,但我的知识是不够的,实际上知道什么专门寻找解决它!

通过在Nodejs中匹配属性来合并JSON数组

我在Node.js中有两个JSON数组 var a = [{id: 1, name: 'A'}, {id: 2, name: 'B'}, {id: 3, name: 'C'}, {id: 4, name: 'D'}]; var b = [{id: 1, marks: 80}, {id: 2, marks: 30}, {id: 3, marks: 76}]; 我想合并这些数组,匹配id值。 请build议一个有效的方法来做到这一点,因为数组包含大约25000条logging。 期望的输出: var o = [{id: 1, name: 'A', marks: 80}, {id: 2, name: 'B', marks: 30}, {id: 3, […]

Node.js forEach:不能读取未定义的属性''

我从来没有见过这个。 这个错误发生在Node.js 6.3.0和6.9.1 LTS上,为了解决这个问题,我更新了这个错误。 我试图根据一些数据build立一个游戏的统计数据,并不是特别重要。 重要的是,下面的函数是我的游戏类的一部分,失败了: computeStats() { var stats , roster , team, opp, scoreState, oppScoreState , TOI = this.calculateTOIData() , eventCounter = this.calculateEventData() [['home', 'away'], ['away', 'home']].forEach((teams) => { //this is line 74 / error source team = teams[0]; opp = teams[1]; roster = this[team].roster; stats = { //some assignments occur here from […]

将大数组整数转换为unicodestring,然后返回到node.js中的整数数组

我有一些数据表示为一个整数数组,可以达到20万个元素。 整数值可以从0到200 000变化。 要模拟这些数据(用于debugging目的),我可以执行以下操作: let data = []; let len = 200000 for (let i = 0; i < len; i++) { data[i] = i; } 要将这个整数数组作为一个Unicodestring我执行此操作: let dataAsText = data.map((e) => { return String.fromCodePoint(e); }).join(''); 当我想要转换回整数数组看起来更长: let dataBack = dataAsText.split('').map((e) => { return e.codePointAt(e); }); console.log(dataBack.length); 它是怎么来的? 哪里不对 ? 额外的信息: 我使用codePointAt / fromCodePoint,因为它可以处理所有的Unicode值(高达21位),而charCodeAt / […]