我的代码或其他代码有什么区别?

时间:2019-07-26 04:21:02

标签: javascript

我不确定为什么这两个代码都能很好地工作。

  1. if ( str.charAt(i) === char ) <这是我的代码
  2. if ( str[i] === char ) <<这是其他人

您能告诉我为什么str [i]运作良好吗?

问题:

编写一个名为“ countCharacter”的函数。

给出一个字符串输入和一个字符,“ countCharacter”返回给定字符串中给定字符出现的次数。

例如:

let output = countCharacter('I am a hacker', 'a');
console.log(output); // --> 3

这是我的:

function countCharacter(str, char) {
  // your code here
  let countRet = 0;
  for ( let i = 0; i < str.length; i = i + 1 ) { 
    if ( str.charAt(i) === char ) {  // <<< here
      countRet = countRet + 1 ;
    }
  }
  return countRet;
}

countCharacter("hello", "l" );

这是来自其他人的:

function countCharacter(str, char) {
  // your code here
  let countRet = 0;
  for ( let i = 0; i < str.length; i = i + 1 ) {
    if ( str[i] === char ) {  //<<<< here
      countRet = countRet + 1 ;
    }
  }
  return countRet;
}

countCharacter("hello", "l" );

1 个答案:

答案 0 :(得分:0)

它在ES5中引入:https://www.w3schools.com/js/js_es5.asp

  

ECMAScript 5语法更改

     
      
  • 对字符串的属性访问[]
  •