草庐IT

Java:微优化数组操作

全部标签

Javascript 如何按字段在数组中搜索

这个问题在这里已经有了答案:FindobjectbyidinanarrayofJavaScriptobjects(36个答案)关闭6年前。我有一个保存这些数据的变量:{"main":[{"id":"123","name":"name1"},{"id":"234","name":"name2"}]}我知道我要搜索的数据的id。我的问题是...如何搜索id234的名称(例如)是上面的数据?

javascript - 如何将 JavaScript 数组转换为二进制数据并返回 WebSocket?

我有这个示例数组:[{id:1,name:"test",position:[1234,850],//randompositiononthemappoints:100//examplepoints}];这是我想做的:将数组转换为二进制数据,并将二进制数据发送到我的WebSocket服务器。在服务器上,将二进制文件解码为数组并进行更改。将数组转换为二进制,并将二进制发送给客户端。在客户端,将二进制文件解码回数组。我的意思的示例截图:这是我的实际代码:varconnection=newWebSocket('wss://my_website.eu:1234');connection.binar

javascript - 根据偶数/奇数索引将数组转换为对象

我正在尝试根据数组的索引是奇数还是偶数将数组转换为对象。例如,,输入:["姓名","汤姆","年龄",20]输出:{"name":"tom","age":20}可以使用forEach、map、filter等JavaScript的基本函数来实现。但我想要更简单的代码。所以我查看了underscore.js的文档,但找不到好的方法。有什么办法可以简单的解决吗? 最佳答案 有趣的问题,我的两分钱:简单而高效的for循环:constsimpleArray=["name","Tom","age",20];//ModifyingtheArray

javascript - 在 Javascript 中删除数组中的重复元素

这个问题在这里已经有了答案:HowtogetdistinctvaluesfromanarrayofobjectsinJavaScript?(62个回答)GetalluniquevaluesinaJavaScriptarray(removeduplicates)(91个答案)关闭6年前。我有一个包含对象电子邮件和ID的数组,所以我想删除具有相似ID的重复元素。例子:varnewarray=[{Email:"test1@gmail.com",ID:"A"},{Email:"test2@gmail.com",ID:"B"},{Email:"test3@gmail.com",ID:"A"},{

javascript - 如何使用Ramda通过键值查找数组中的匹配对象

RamdaREPLexamplevarportfolio=[{ticker:"aa"},{ticker:"bb"}];varticker={ticker:"aa"};varexist=R.find(R.propEq('ticker',ticker),portfolio)console.log(exist)目前这给了我未定义,但是R.propEq我想应该在port中通过keyticker找到匹配的对象吧? 最佳答案 按照你说的,把key传给propEq就可以解决了:R.find(R.propEq('ticker','aa'),port

Javascript将对象数组累积到对象数组

我有一个对象数组:varmyArray=[{"date":"03/01/2017","value":2},{"date":"04/01/2017","value":6},{"date":"05/01/2017","value":4}];我需要累加值并保持同一个数组更新值结果是这样的varmyArray=[{"date":"03/01/2017","value":2},{"date":"04/01/2017","value":8//(2+6)},{"date":"05/01/2017","value":12//(2+6+4)}];我知道这是存在的[0,1,2,3,4].reduce(fu

javascript - 鉴于 V8/spidermonkey/chakra 的内部工作原理,在 JavaScript 中显式初始化 undefined object 成员是否是一种优化?

在JavaScript中,一个通常被吹捧的良好性能原则是避免改变对象的形状。这让我想知道,这是不是classFoo{constructor(){this.bar=undefined;}baz(x){this.bar=x;}}一个有值(value)的最佳实践,将提供比这更好的性能classFoo{constructor(){}baz(x){this.bar=x;}}这是真的还是假的?为什么?在一个JS引擎中是否比其他引擎更真实或更不真实? 最佳答案 这里是V8开发人员。是的,总的来说,第一个版本是一个有值(value)的最佳实践。这样

javascript - 如何使用展开运算符从对象数组中删除重复项

我有以下对象数组,其中id作为唯一键":vartest=[{id:1,PlaceRef:"*00011",Component:"BATH",SubLocCode:"BAT",BarCode:""},{id:2,PlaceRef:"*00022",Component:"BAXI10R",SubLocCode:"KIT",BarCode:""},{id:1,PlaceRef:"*00011",Component:"BATH",SubLocCode:"BAT",BarCode:""},{id:3,PlaceRef:"*00011",Component:"ANR190",SubLocCode:

javascript - 关于如何使用 Google Closure Compiler 组合多个没有任何优化的 javascript 文件的想法?

关于如何使用GoogleClosureCompiler组合多个JavaScript文件而不进行任何优化,有什么想法吗?具体来说,我们想使用Closure来部署我们组合站点JavaScript的两个版本:release和debug。对于发布,我们使用的是--compilation_levelSIMPLE_OPTIMIZATIONS--manage_closure_dependencies,它按预期工作。但是,对于调试,我们希望我们的JavaScript完整/未修改地组合在一起,以便于调试。似乎最低级别的优化是WHITESPACE_ONLY,任何想法将不胜感激。

JavaScript:在数组文字中访问自己的对象属性

给定一个JavaScript对象中的数组文字,访问它自己的对象的属性似乎不起作用:varclosure={myPic:document.getElementById('pic1'),picArray:[this.myPic]}alert(closure.picArray[0]);//alerts[undefined]而通过访问其他JavaScript对象来声明数组项似乎可行​varclosure1={​​myPic:document.getElementById('pic1')​}​​varclosure2={​​picArray:[closure1.myPic]​}​​alert(c