检查是否全部在Lower的功能

时间:2016-03-10 08:27:46

标签: javascript

我正在学习Javascript语言并且我有一个基本的函数来编写:它应该检查字符串中的每个字母是否都在较低的位置并根据它返回true或false,我试着写它但是它返回“undefined”而不是true / false,我不明白为什么,这里是代码:

var s="hello";
var toutEnMinuscules = function(s){
  var i=0;
  var x=true;
  for (i; i<s.length; i++ ){
    if(charAt(i)!==charAt(i).toLowerCase()){
      x=false;
      break;
    }
  }
  return x;
}

3 个答案:

答案 0 :(得分:3)

你可以简单地通过

来做到这一点
var s="hello";
var isAllLower = s.toLowerCase() == s;

无需逐个迭代和检查字符。

您的代码存在的问题是,您正尝试访问charAt中的window scope功能。但实际上它可以在prototype的{​​{1}}中找到,

string

答案 1 :(得分:1)

  

我试过写它但它返回&#34;未定义&#34;代替   是/否,我不知道为什么,这是代码:

原因很简单,因为你没有调用函数;)

其次,您的代码不正确。 charAt不是全局方法,而是字符串方法。

成功

var s="hello";
var toutEnMinuscules = function(s){
  var i=0;
  var x=true;
  for (i; i<s.length; i++ ){
    if(s.charAt(i)!==s.charAt(i).toLowerCase()){ //observe that this line has changed to invoke a string function
      x=false;
      break;
    }
  }
  return x;
}
toutEnMinuscules (s); //this line has been added to invoke the function

答案 2 :(得分:0)

你可以尝试:

function isAllLower(str){
    return str.search(/^[a-z\s]*$/g)>-1;
}