相关疑难解决方法(0)

查找出现奇数次的元素

我正在尝试解决这个寻找在数组中出现奇数次的数字的练习。到目前为止,我已经有了这个,但输出最终是一个出现偶数次的整数。例如,数字 2 出现了 3 次,数字 4 出现了 6 次,但输出是 4,因为它算作出现了 5 次。它怎么会返回它发现为奇数的第一个集合?任何帮助表示赞赏!

         function oddInt(array) {
         var count = 0;
         var element = 0;
         for(var i = 0; i < array.length; i++) {
           var tempInt = array[i];
           var tempCount = 0;
             for(var j = 0; j <array.length; j++) {
                if(array[j]===tempInt) {
                tempCount++;
                  if(tempCount % 2 !== 0 && tempCount > count) {
                  count = tempCount; 
                  element = array[j];
                }
               }
              }
             }
           return element;
           }
           oddInt([1,2,2,2,4,4,4,4,4,4,5,5]);
Run Code Online (Sandbox Code Playgroud)

javascript arrays integer for-loop

4
推荐指数
1
解决办法
1万
查看次数

将数组转换为新数组(计算出现次数)

我有一系列n

var arr1 = [2, 0, 0, 1, 1, 2, 0, 0, 0, 2, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 2, 2, 0, 0, 2, 2, 1, 2, 2, 0, 1, 2, 2, 1, 1, 0, 1, 1, 0, 2, 1, 0, 0, 0, 2, 1, 1, 1, 2, 2, 1, 0, 0, 0, 2, 2, 2, 2, 2, 1, 0, 2, 2, 0, 2, 2, 0, 2, 0, 0, 1, 2, …
Run Code Online (Sandbox Code Playgroud)

javascript arrays

3
推荐指数
2
解决办法
377
查看次数

单词频率计数,修复标准属性的错误

我正在尝试构建一个javascript函数,它可以计算输入数组中每个单词的出现次数.

示例:

输入

a=["a","booster","booster","constructor","adam","adam","adam","adam"]
Run Code Online (Sandbox Code Playgroud)

输出:

"a":1
"booster":2
"constructor":1
"adam":4
Run Code Online (Sandbox Code Playgroud)

输出应该是相似的.

我是javascript的新手,我试图使用dict.但是对象有一个叫做"构造函数"的属性,所以cnt ["constructor"]似乎不起作用.

这是我的代码和结果:

var cnt={};
console.log("constructor");

for(var i=0;i<a.length;++i)
{
    if(! (a[i] in cnt))
        cnt[a[i]]=0;
    else
        cnt[a[i]]+=1;
}

for(var item in cnt)
    console.log(item+":"+cnt[item]);
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述

您可以看到1作为字符串添加到cnt的构造函数中.

javascript arrays

3
推荐指数
1
解决办法
1105
查看次数

计算JavaScript数组元素的出现次数并放入新的2d数组

嗨,我有这样的阵列

var a = [5, 5, 5, 2, 2, 2, 2, 2, 9, 4];
Run Code Online (Sandbox Code Playgroud)

我的目标是计算唯一值并报告其中的任何项目,结果很好

Array [
   [5, 3],
   [2, 5],
   [9, 1],
   [4, 1]
]
Run Code Online (Sandbox Code Playgroud)

我找到了一个解决方案,可以在另一篇文章中找到[ 计算JavaScript数组元素的出现次数

@Emissary解决方案对我来说是最好的,问题是这个解决方案过去并添加一些我不需要的新功能,我不能直接回复该帖子,询问如何只有我需要的数组:d

@Emissary加了

console.log(key +':'+ val)

我的第一个想法是,而不是console.log我可以推送2d数组中的每个值,但我认为这不是一个好主意,因为如果我很了解@Emissary解决方案,那么解决方案的第一部分就是我需要的数组.

知道如何"隔离"这个特定阵列吗?

javascript arrays

3
推荐指数
1
解决办法
342
查看次数

计算每个数组项的出现次数并将结果作为对象返回

任何本机替代品:

const colorArray = ['red', 'green', 'green', 'blue', 'purple', 'red', 'red', 'black'];
Run Code Online (Sandbox Code Playgroud)

到:

Object {
  "red": 3,
  "green": 2,
  "blue": 1,
  "purple": 1,
  "black": 1
}
Run Code Online (Sandbox Code Playgroud)

在javascript中??

const colorArray = ['red', 'green', 'green', 'blue', 'purple', 'red', 'red', 'black'];
Run Code Online (Sandbox Code Playgroud)
那是我尝试完成此操作的尝试,但我想要一个已经内置的本机解决方案。

感谢您的宝贵努力和时间!!

javascript arrays duplicates categorization categorical-data

3
推荐指数
1
解决办法
69
查看次数

如何计算 TypeScript 中字符串数组中字符串出现的次数?

我需要迭代一个字符串数组,计算每个字符串的出现次数,并返回一个包含值和出现次数的对象。

我正在尝试使用数组归约函数来实现这样的事情,但是,尽管进行了尝试,但我还无法实现这一点。

所以我有以下内容:

["tony", "tony", "tony", "tony", "kassandra", "tony", "tony", "kassandra"]
Run Code Online (Sandbox Code Playgroud)

我需要输出:

[{ name: "tony", matches: 6 }, { name: "kassandra", matches: 2 }]
Run Code Online (Sandbox Code Playgroud)

我应该使用什么来获得上述输出?

我已经尝试过以下方法:

const names = nameList.map((user) => user.name);

const reduce = names.reduce((p, c) => {
  if (p == c) {
    return { name: p, matches: `idk what put here yet` };
  }
  return c;
});
Run Code Online (Sandbox Code Playgroud)

javascript reduce typescript

3
推荐指数
1
解决办法
507
查看次数

JavaScript - 获取具有特定值的对象计数

我已经提到了下面列出的这些问题,但没有帮助我。

  1. 计算数组元素的出现次数/频率
  2. 计算内部二维数组的值 - javascript
  3. 计算多维数组中的元素

我想从具有特定值的对象中获取计数。例如,我有这个数组列表,

var testData = [
  {
    "issue_type": "Warning",
    "created_date": "2019-05-13T13:43:16.437Z",
  },
  {
    "issue_type": "Warning",
    "created_date": "2019-05-13T13:45:16.330Z",
  },
  {
    "issue_type": "Alert",
    "created_date": "2019-05-13T13:43:16.437Z",
  },
  {
    "issue_type": "Alert",
    "created_date": "2019-05-13T13:45:16.330Z",
  }
]
Run Code Online (Sandbox Code Playgroud)

我想计算有多少带有键的对象"issue_type"="Warning"

我试过这个循环,但这不是我要找的,

var counts = {};
for (var i = 0; i < arr.length; i++) {
    var num = arr[i];
    counts[num] = counts[num] ? counts[num] + 1 : 1;
}
console.log(count['issue_type']);
Run Code Online (Sandbox Code Playgroud)

请给我建议出路。

javascript arrays javascript-objects

2
推荐指数
2
解决办法
4091
查看次数

如何返回列表中相同对象的计数?

我有一个这样的日期列表:

[ "2020-08-20", "2020-08-20", "2020-08-21", "2020-08-24", "2020-08-25", "2020-08-25", "2020-08-25", ]

如何返回列表中相同项目的计数?

例如:

{date: "2020-08-20", count: 2},
{date: "2020-08-21", count: 1},
{date: "2020-08-24", count: 1},
{date: "2020-08-25", count: 3},
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

javascript typescript

2
推荐指数
1
解决办法
79
查看次数

从电子表格数据的单列制作条形图

我有一个包含分类数据列的大型电子表格.我想为每列创建一个条形图,表示该列中不同值的计数.我尝试使用Google Apps脚本自动完成此过程,但我得到的结果非常错误.

这是我正在使用的代码

function myFunction() {

var responseSpreadSheet = SpreadsheetApp.openByUrl("https://mySpreadsheetLink")
                          .getActiveSheet();
Logger.log(responseSpreadSheet.getName());

var titles = responseSpreadSheet.getRange(1, 4, 1, 25).getValues(); 

var barChart = responseSpreadSheet.newChart()
               .setChartType(Charts.ChartType.BAR)
               .setOption('title', titles[0][0])
               .addRange(responseSpreadSheet.getRange("D2:D57"))
               .setPosition(5, 5, 0,0)
               .build();


responseSpreadSheet.insertChart(barChart);
}
Run Code Online (Sandbox Code Playgroud)

这是带有嵌入式条形图的电子表格:

嵌入式条形图

并且期望的结果将是这样

期望的结果

如何在列上创建此类图表?

google-visualization google-sheets google-apps-script

1
推荐指数
1
解决办法
1407
查看次数

使用javascript计算数组中出现的每个数字的出现次数

我试图计算数组中出现的数字的出现次数.
逻辑
所以我已经有一个包含数字的数组,所以我想只将唯一数字推入另一个数组.我还有另一个包含每个数字的计数的数组.

代码:

<html>
   <body>

      <script language="javascript" type="text/javascript">
         <!--
          var numbers = [ 2, 1, 2, 1, 3, 4, 2];
          var count = [];
          var newNumbers = [];

          newNumbers[0] = numbers[0];
          count[0] = 1;

          for(var i = 1 ; i < numbers.length ; i++){
              for(var j = 0 ; j < newNumbers.length ; j++){
                  if(numbers[i] == newNumbers[j]){
                      document.write("<br/>" + "Number Already Present" + " " +numbers[i]);
                  count[j] = count[j]++;

                  }else{
                      newNumbers.push(numbers[i]);
                  }
              }
          }
           for(var j = …
Run Code Online (Sandbox Code Playgroud)

javascript

1
推荐指数
1
解决办法
3006
查看次数

这个JavaScript代码(数组)有什么问题?

下面是一个代码片段,它找出"数组的每个元素重复多少次".一切都按预期工作,除了它没有给我"ebay重复计数"

var strArr = ["google","ebay","yahoo","google","ebay","facebook","facebook","google"];
var output= {};
strArr.forEach(function(element) {
    var count = 0;
    try{
        while(strArr.indexOf(element) !== -1){
            strArr.splice(strArr.indexOf(element),1);
            count++;

        }  
    }catch(e){
        console.log(e);
    }
 output[element] = count;
});
console.log(output);
Run Code Online (Sandbox Code Playgroud)

我试着调试它debugger;,我发现数组的第二个元素被跳过了.

预期产出:

google:3
ebay:2
yahoo:1
facebook:2
Run Code Online (Sandbox Code Playgroud)

实际产量:

google:3
yahoo:1
facebook:2
Run Code Online (Sandbox Code Playgroud)

javascript

0
推荐指数
2
解决办法
64
查看次数