标题:麻烦专家来个解释,关于这句if(s.charAt(i)!="")
只看楼主
jin522
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2010-10-11
结帖率:60%
已结贴  问题点数:10 回复次数:8 
麻烦专家来个解释,关于这句if(s.charAt(i)!="")
程序代码:
<html>
<head><title></title>
<script language="javascript">
function checkValid(s)
{

 var len=s.length;

 for(var i=0;i<len;i++)

 {
  if(s.charAt(i)!="")/*什么意思这句,为什么要这句,我把它删除直接return false;也行啊?*/
  {
   return false;
  }

 }

 return true;
}
function okHandle()
{

 if(checkValid(document.test.userName.value))

 {
  alert("用户名空了");

 }

 else if(checkValid(document.test.passWord.value))

 {
  alert("密码空了");

 }

 else

 {

 alert("okok!!");

 }
}
function cancelHandle()
{
document.test.userName.value="";
document.test.passWord.value="";
}
</script>
</head>
<body>
<form name="test">
<font size=2">用户名:</font>
<input type="text" name="userName"/>
<br/><br/>
<font size=2">用户密码:</font>
<input type="text" name="passWord"/>
<br/><br/>
<input type="button" name="ok" value="确定" onclick="okHandle()"/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="button" name="cancle" value="取消" onclick="cancelHandle()"/>
</form>
</body>
</html>
搜索更多相关主题的帖子: charAt 专家 麻烦 解释 
2010-11-29 18:22
jin522
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2010-10-11
得分:0 
var len=s.length;
 for(var i=0;i<len;i++)
 {
                    /*这样也行,为什么还要它*/
  
   return false;
  
 }
 return true;
}
2010-11-29 18:26
gupiao175
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:40
帖 子:1787
专家分:7527
注 册:2007-6-27
得分:8 
<script>
var str="";
var str2="bccn";
alert(check(str)); //true;
alert(check(str2));  //false
function check(s)
{
var len=s.length;
  for(var i=0;i<len;i++)
   {
     if(s.charAt(i)!="")/*什么意思这句,为什么要这句,我把它删除直接return false;也行啊?*/
      {
        alert(s.charAt(i)); //看看这句的警告就知道他的作用了!
        return false; //只要有值就返回false,包括空格特殊符号等等都将成立!
       }
    }
   return true;//只有当没有任何值输入的时候为true!
}
</script>

Q:1428196631,百度:开发地 即可找到我,有事请留言!
2010-11-29 19:29
gupiao175
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:40
帖 子:1787
专家分:7527
注 册:2007-6-27
得分:0 
在你这里例子的效果,确实有没有:if(s.charAt(i)!="")/*什么意思这句,为什么要这句,我把它删除直接return false;也行啊?*/ 这个判断效果都是一样的。
如果只是为了鉴定有值没值话,可以更简单些!其函数等效于一句话的函数:
  function check(s)
 {
   if(s.length!=0) return false;
   return true;
  }


Q:1428196631,百度:开发地 即可找到我,有事请留言!
2010-11-29 19:33
sclorg
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:55
专家分:152
注 册:2010-4-16
得分:2 
一般用length==0判断,charAt费力不讨好,反而引起误解
2010-11-30 09:19
jin522
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2010-10-11
得分:0 
了解,够清晰,多谢指导
2010-11-30 12:20
xieliu0048
Rank: 2
等 级:论坛游民
帖 子:44
专家分:30
注 册:2010-11-30
得分:0 
charAt可以判断字符中间的空格
2010-12-01 12:51
jin522
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2010-10-11
得分:0 
什么情况下要用charAt,给个例子?
2010-12-01 20:54
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8074
专家分:6657
注 册:2005-11-7
得分:0 
没有什么特殊情况啊,只要你觉得需要了就用啊,就像顶层写的那样,只是逻辑需要的时候就写了

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2010-12-01 21:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-327299-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.349572 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved