Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
编写JavaScript函数以获取指定字符串中每个字母的出现次数_Javascript - Fatal编程技术网

编写JavaScript函数以获取指定字符串中每个字母的出现次数

编写JavaScript函数以获取指定字符串中每个字母的出现次数,javascript,Javascript,“编写JavaScript函数以获取指定字符串中每个字母的出现次数。” 我尝试过这种方法,但我所有的输出都是0,我真的不明白为什么 我的想法是: 字母顺序-因此,如果一个字母与下一个字母相同,计数器将增加。当它不相同时,它记录字母、字母出现的次数并重置计数器 顺便说一句,我不知道如何让它读那些只出现一次的字母。你能帮忙吗 函数计数(字符串){ 让string1=string.split(“”.sort().join(“”); 设计数器=0; for(设i=0;i{ a[字母]=(a[字母]|

“编写JavaScript函数以获取指定字符串中每个字母的出现次数。” 我尝试过这种方法,但我所有的输出都是0,我真的不明白为什么

我的想法是: 字母顺序-因此,如果一个字母与下一个字母相同,计数器将增加。当它不相同时,它记录字母、字母出现的次数并重置计数器

顺便说一句,我不知道如何让它读那些只出现一次的字母。你能帮忙吗

函数计数(字符串){
让string1=string.split(“”.sort().join(“”);
设计数器=0;
for(设i=0;i使用该函数可避免仅出现一次问题

函数计数(字符串){
返回字符串.split(“”).reduce((a,字母)=>{
a[字母]=(a[字母]| 0)+1;
返回a;
}, {});
}
日志(计数(“快速浏览信息跳转到AZYDOG”)
.as控制台包装{max height:100%!important;top:0;}
使用该函数可避免仅出现一次问题

函数计数(字符串){
返回字符串.split(“”).reduce((a,字母)=>{
a[字母]=(a[字母]| 0)+1;
返回a;
}, {});
}
日志(计数(“快速浏览信息跳转到AZYDOG”)

.as控制台包装{max height:100%!important;top:0;}
代码中有两个小错误

  • 匹配条件应为
    string1[i]==string1[i+1]
  • 启动值为1的计数器,因为每个值至少出现一次
函数计数(字符串){
让string1=string.split(“”.sort().join(“”);
设计数器=1;
for(设i=0;i计数(“快速浏览信息跳转到蓝色日志”)代码中有两个小错误

  • 匹配条件应为
    string1[i]==string1[i+1]
  • 启动值为1的计数器,因为每个值至少出现一次
函数计数(字符串){
让string1=string.split(“”.sort().join(“”);
设计数器=1;
for(设i=0;i计数(“快速浏览信息跳转到蓝色日志”)我在这里没有看到的另一种方法:

const count=(str)=>{
设freq={};
for(让i=0;i日志(计数(“快速浏览信息跳转到AZYDOG”)我在这里没有看到的另一种方法:

const count=(str)=>{
设freq={};
for(让i=0;i日志(计数(“快速浏览信息跳转到AZYDOG”)您可以这样做

function count(text){
  var i = 0;
  var j = 0;
  var chars = new Array();
  var occurs = new Array();

  for(i = 0;i < text.length;i++){
    //save current char
    chars.push(text[i]);

    //get occurences
    occurs.push(countOccurs(text, text[i]));
  }

  //clean for duplicates
  for(i = 0;i < chars.length;i++){
    for(j = (i + 1);j < chars.length;j++){
      if(chars[i] == chars[j]){
        chars[j] = "";
        occurs[j] = 0;
      }
    }
  }

  //print it!
  for(i = 0;i < chars.length;i++){
    if(chars[i] != '')
      console.log("The char " + chars[i] + " appears " + occurs[i] + " times.");
  }
}

function countOccurs(text, character){
  var i = 0;
  var ret = 0;

  for(i = 0;i < text.length;i++)
    if(text[i] == character)
      ret++

  return ret;
}

count("abcdefabcd");
函数计数(文本){
var i=0;
var j=0;
var chars=新数组();
var occurs=新数组();
对于(i=0;i

因此,您只需计算每个字符的发生次数,然后清理数组。

您可以这样做

function count(text){
  var i = 0;
  var j = 0;
  var chars = new Array();
  var occurs = new Array();

  for(i = 0;i < text.length;i++){
    //save current char
    chars.push(text[i]);

    //get occurences
    occurs.push(countOccurs(text, text[i]));
  }

  //clean for duplicates
  for(i = 0;i < chars.length;i++){
    for(j = (i + 1);j < chars.length;j++){
      if(chars[i] == chars[j]){
        chars[j] = "";
        occurs[j] = 0;
      }
    }
  }

  //print it!
  for(i = 0;i < chars.length;i++){
    if(chars[i] != '')
      console.log("The char " + chars[i] + " appears " + occurs[i] + " times.");
  }
}

function countOccurs(text, character){
  var i = 0;
  var ret = 0;

  for(i = 0;i < text.length;i++)
    if(text[i] == character)
      ret++

  return ret;
}

count("abcdefabcd");
函数计数(文本){
var i=0;
var j=0;
var chars=新数组();
var occurs=新数组();
对于(i=0;i
因此,您只需计算每个字符的发生次数,然后清除数组。

const counterFunc=(string)=>{
让计数器={};
string.split(“”).map((char)=>{
if(计数器类型[char]!==“未定义”){
计数器={
柜台
[char]:计数器[char]+1
}
}否则{
计数器[char]=1
}
})
返回Object.keys(计数器).map(k=>{
返回k+计数器[k];
}).加入(“”);
};
控制台日志(counterFunc(“abcabftyeacrtfvcserfvaserdcvfrt”))
const counterFunc=(字符串)=>{
让计数器={};
string.split(“”).map((char)=>{
if(计数器类型[char]!==“未定义”){
计数器={
柜台
[c]