Tag: 数组

用string排列数组

我想sorting一个数组string中的数组。 这是类似于这个问题( sorting数组中的string数组 ),但我不知道如何实现。 我的数组如下 var myArray = [ ['blala', 'alfred', '…'], ['jfkdj', 'berta', '…'], ['vkvkv', 'zimmermann', '…'], ['cdefe', 'albert', '…'], ]; 我想按字母顺序(不区分大小写)按内部数组的名称或第二个参数进行sorting。 之后,我想sorting的第一个参数,如果有两个相同的第二个参数的元素。 我尝试使用以下,但不成功,并没有真正得到原因。 任何人都可以build议: function Comparator(a,b){ if (a[1] < b[1]) return -1; if (a[1] > b[1]) return 1; return 0; } var myArray = [ ['blala', 'alfred', '…'], ['jfkdj', 'berta', '…'], ['vkvkv', 'zimmermann', […]

如何在JavaScript Node.js中基于单个值dynamic分割数组

我需要基于JavaScript中的单个值dynamic分割数组。 我有一个数组: var dataStuff = [ { Name: 'Apple', Tag: 'Fruit', Price: '2,5'}, { Name: 'Bike', Tag: 'Sport', Price: '150'}, { Name: 'Kiwi', Tag: 'Fruit', Price: '1,5'}, { Name: 'Knife', Tag: 'Kitchen', Price: '8'}, { Name: 'Fork', Tag: 'Kitchen', Price: '7'} ]; 我期望数组通过标签拆分,例如。 var Fruit = [ { Name: 'Apple', Tag: 'Fruit', Price: '2,5'}, { […]

用nodejs标准化对象数组中的缺失值

我有这个数据场景: var data = [ { 'name': 'social-button', 'group': null }, { 'name': 'social-button', 'group': null }, { 'name': 'social-button', 'group': 'buttons' }, { 'name': 'social-button', 'group': null }, { 'name': 'icon', 'group': 'icons' }, { 'name': 'other', 'group': null }, { 'name': 'icon', 'group': null } ]; 我想正常化这个数据到这个: var data = [ { 'name': […]

蛇通过JavaScript数组

这可能是一个简单的答案,但我是一个最幸福的,这真的打破了我的大脑。 我想通过一个数组通过snaking赋值给variables。 我的代码是用Discord.js写的用于Discord的TTRPG toolbot。 对于这个特殊的function,我希望根据input的玩家数量来调整统计卷数,然后将所有这些卷集中在一起进行分类。 从那里开始,我希望通过sorting的arrays让每个玩家获得一套统计数据,这样每个玩家就可以接近一个平等的游戏场地。 例如,如果input是3个玩家,机器人将滚动3套6个统计数据并将其汇集到一个数组中。 为了简单解释,我们会说我们从1-18所有的数字。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 将被分配到 ABCCBAABCCBAABCCBA 所以最后的变数会 A = [1,6,7,12,13,18] B = [2,5,8,11,14,17] C = [3,4,9,10,15,16] 我现在的代码只能通过循环(A,B,C,A,B,C …)来sorting,这不会导致玩家被平均掉。 我尝试了很多不同的方法来获得我需要的结果,但是最终的variables只能被赋值一次,中间的variables会被赋予更多的属性,或者每个玩家variables只赋值一个属性。 我试着在网上search任何帮助,但是用“Javascript”和“Snake”search任何东西只是教你如何制作游戏,所以我真的希望你们能帮助我。 非常感谢,如果我想说的不清楚,我很抱歉,所以我很乐意回答您可能需要帮助的答案。 码: if (msgContent.startsWith(".dstats ")) { let args = msgContent.split(" ").slice(1); var regex […]

NodeJS差异Object.keys(数组).length和array.length

我有一个从文件系统读取文件并将其存储到数组中的函数。 之后我想添加一个键/值对的元素。 但是,forEach循环没有执行,因为显然没有元素在那里。 readFilesFromDirectory(folder, elements, 'json', function(){ log(Object.keys(elements).length,0); log(elements.length,0); elements.forEach(function(elem){ elem["newKey"] = 1; }); }); 我的日志包含以下行: 1 0 第一个长度方法正在工作,第二个不是。 我想知道我在做什么错误的第二个function,我怎么能解决它。 其实,我的主要目标是添加新的密钥。 但是,我不知道如何在代码中使用一些Object.keyValues(elements).forEach(function(elem){…}如果你有一个提示,这也是很好的。 我真的很感谢这里的一些见解! 🙂

正则expression式匹配variables

我试图testing下面的正则expression式,但我无法得到它的工作。 我使用regex101,但任何人都可以build议如何纠正或格式化正则expression式? 我有一个数组 – 用5个元素称为arr []。 arr [0]需要是可变数量的字母,即一个单词的名称。 arr [1]必须是单字或双字的名称(即可变数量的字母或可变数量的字母,后跟空白字符,后跟可变数量的字母) arr [2]需要连续10个数字(例如123432908623,也可以从0开始) arr [3]必须是以下格式的社会安全号码 – 3位数字后跟空白,后跟2位数后跟4位(例如123 45 6848) arr [4]需要是带有区号的电话号码,格式如下:左括号后面跟着3位数字,后面跟着括号,然后是空格,后面跟着左括号,后面跟着3位数字,后面跟着括号,然后是空格,然后是左括号接着是4位数字,然后是右括号(例如(123)456 1234) 这是我开始的一些代码: for(var i = 0; i<arr.length; i++){ var str1 = arr[i][0]; var pat1 = /^\s'w+?'/; var first = pat1.test(str1); console.log(first); var str2 = arr[i][1]; var pat2 = /\s'\w+(?:\s\w+)?'/; var second = pat2.test(str2); console.log(second); var […]

位置对象预期,位置数组格式不正确

我花了这么直截了当的事情。 我只想在使用nodejs,mongoose,restify stack的用户模型上执行CRUD操作。 我的mongo实例在mongolab上。 用户应该包含一个“loc”字段。 用户架构如下: var mongoose = require('mongoose') var Schema = mongoose.Schema; var userSchema = new Schema( { email_id : { type: String, unique: true }, password: { type: String}, first_name: String, last_name: String, age: String, phone_number: String, profile_picture: String, loc: { type: {}, coordinates: [Number] } }); userSchema.index({loc:'2d'}); var User = mongoose.model('user', […]

在JavaScript中压缩数组

什么是JavaScript相当于Ruby的Array#compact? 长版本….我跟着在blog.nemikor.com的例子。 他的最后一个例子closures了旧的要求,但是随后的pendings仍然被pendings 。 这看起来像是一个内存泄漏给我。 我的解决scheme是迭代filter如下所示,但这似乎有可能是pendings.push和pendings = pendings.filter之间的竞争条件。 我是偏执狂吗? 如果存在竞争条件,我该如何解决? var pendings = []; // there is a route app.get('/some/path', function (request, response) { pendings.push({ response: response, requestedAt: new Date().getTime() }); }); setInterval(function () { var expiration = new Date().getTime() – (1000 * 30); pendings = pendings.filter(function (pending, index) { if (pending.requestedAt > expiration) { […]

在node.js和socket.io中发送数组时发生错误

我使用socket.io版本0.8.4 我把我的问题归结为以下几点。 我有这样的数据: data.prop1 = []; data.prop1.push("man"); data.prop2 = []; data.prop2["hey"] = "man"; 我以这种方式将数据从服务器发送到客户端: socket.emit("data", data); 在客户端,我以这种方式接收数据: socket.on("data", function(data){ console.log(data); }); 奇怪的是: data.prop1 = []; data.prop1.push("man"); // This data exists in the client side data object data.prop2 = []; data.prop2["hey"] = "man"; // This data does not exist. data.prop2只是客户端的一个空数组。 在prop2中的表单中的json序列化数组中有一个已知的错误? 先谢谢你 编辑: 使用此解决方法解决问题: data.prop1 = […]

JavaScript / ECMAScript数组在Node.js中“稀疏”吗?

我的问题是相同的JavaScript数组稀疏? 有一个区别 JavaScript数组是稀疏的, 在Node.js(和/或V8)中实现 ? 我假设了这些,但是我做了下面的testing: var testArray = []; testArray[10000] = 'test'; console.log(testArray); 返回的是10000个空白元素,最后是“testing”。 这是因为debugging输出的工作方式,或者是否Node.js实际上为未定义的数组元素添加新元素时分配内存?