java代码

可以讲一下每一行代码都是什么意思吗?<scripttype="text/javascript">functionemailcheck(){varemailadd=prom... 可以讲一下每一行代码都是什么意思吗?
<script type="text/javascript">
function emailcheck()
{
var emailadd=prompt("请输入一个email地址");
var positionat=0;
var countat=0;
while(positionat!=-1)
{
positionat=emailadd.indexOf("@",positionat);
if(positionat!=-1)
{
positionat++;
countat++;
}
}
if(countat<=1)
{
positionat=emailadd.indexOf("@");
}
var user=emailadd.substring(0,positionat-1);
var length=user.length;
var lastcode=emailadd.charCodeAt(positionat-1);
if(countat!=1||length<6||lastcode>48&&lastcode<57)
{
alert("请输入正确的email地址!");
}
else
{
var positiondot=emailadd.indexOf(".");
var server=emailadd.substring(positionat+1,positiondot);
var newserver=server.toUpperCase();
alert("您好,来自"+newserver+"的用户!");
}
}
</script>
展开
 我来答
你们这帮虫豸
2014-05-16 · TA获得超过104个赞
知道小有建树答主
回答量:207
采纳率:0%
帮助的人:165万
展开全部
/*这就是一个email格式验证函数,写得还挺烂的*/
function emailcheck(){
    var emailadd=prompt("请输入一个email地址"); //弹出输入框 输入的内容回存到emailadd
    var positionat=0;//定义标致变量 positionat  和 countat
    var countat=0;
    while(positionat!=-1){//此循环的作用是查emailadd存放的字符串里面有几个@【就是循环着找@,如果indexof找到@的话就返回位置数值,找不到就返回-1】
     positionat=emailadd.indexOf("@",positionat); //【这里用了嵌套啊,就是从前一个找到的位置再开始找,而不是从0位置】
     if(positionat!=-1) {//【然后这里判断啊,如果返回的不是-1,也就是找到了一个@,我们就就给countat加1分】
     positionat++;
     countat++;
     }
   }//【所以循环结束的话,countat就是找到的总共多少个@,其实上面这一大堆代码用一个match就搞定了】
   if(countat<=1){//如果查到的@小于等于一个
    positionat=emailadd.indexOf("@");//那么就把@的位置赋给positionat
   }
    var user=emailadd.substring(0,positionat-1);//截取@前面的字符串作为用户名
    var length=user.length;//取用户名的长度
    var lastcode=emailadd.charCodeAt(positionat-1);//取用户名最后一个字的ascii码
    if(countat!=1||length<6||lastcode>48&&lastcode<57){//判断 如果没有@ 或者 用户名长度少于6个 或者 用户名最后一个字符是数字
     alert("请输入正确的email地址!");//就弹出来请输入正确email地址!!【这什么逻辑……QQ邮箱怎么办?】
    }else {//如果判断否定的话
     var positiondot=emailadd.indexOf(".");//取点的位置
     var server=emailadd.substring(positionat+1,positiondot);//截取@到点之间的字符 
     var newserver=server.toUpperCase();//把上面取出来的邮箱名称大写
     alert("您好,来自"+newserver+"的用户!");//然后输出
    }
}
Silin_Silin
2014-05-16 · TA获得超过470个赞
知道小有建树答主
回答量:303
采纳率:50%
帮助的人:379万
展开全部
首先这是javascript,不是java,这两者完全不同
然后从函数名可以看出这是用来检查email地址的合法性的
太多了,每行解释太麻烦了,说些重要的

var emailadd=prompt("请输入一个email地址"); // 弹出提示框,输入email地址

while(positionat!=-1) // 计算@符号的数量(countat),positionat用于表示查找的开始位置和查找结果
{
positionat=emailadd.indexOf("@",positionat); // @符号的位置
if(positionat!=-1)
{
positionat++;
countat++;
}
}

if(countat<=1) // 这儿感觉有点问题
{
positionat=emailadd.indexOf("@");
}

var user=emailadd.substring(0,positionat-1); // 取得@前面的子串,即用户名
var length=user.length; // 用户名的长度
var lastcode=emailadd.charCodeAt(positionat-1); // 用户名中最后一个字符的ascii码
if(countat!=1 // 是不是只有1个@符号
||length<6 // 用户名是不是小于6个字符
||lastcode>48&&lastcode<57) // 用户名最后一个字符是不是数字
{
alert("请输入正确的email地址!"); // 无效的地址
}
else
{
var positiondot=emailadd.indexOf("."); // .的位置
var server=emailadd.substring(positionat+1,positiondot); // 获得@后面,.前面的部分,即服务器名,如 xxxxx@qq.com中的 qq
var newserver=server.toUpperCase(); // 转换成大写
alert("您好,来自"+newserver+"的用户!"); // 输出提示
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
174639446
推荐于2016-06-20 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:129
采纳率:0%
帮助的人:75万
展开全部
function emailcheck()
{
var emailadd=prompt("请输入一个email地址"); /* 弹窗提示输入,并接受输入值 */
var positionat=0; /* 定义变量 初始值为0 */
var countat=0; /* 定义变量 初始值为0 */
while(positionat!=-1) /* 当变量positionat不等于-1时 一直循环下去*/
{
/*int indexOf(String str, int fromIndex) 从指定的索引处开始,
返回第一次出现的指定子字符串在此字符串中的索引,没出现则返回-1 */
positionat=emailadd.indexOf("@",positionat); /* 从第0个开始搜索他输入的字符串 */
if(positionat!=-1) /* 不等于-1,则代表有输入@ */
{
positionat++;/* 出现@的位置+1 */
countat++; /* 数量+1 */
}
}
if(countat<=1) /* 如果计算小于等于1 */
{
positionat=emailadd.indexOf("@");/* 则获取第一次出现的@位置 */
}
var user=emailadd.substring(0,positionat-1);
/* 输入的字符串从第0个开始截取到@的位置,复制给user*/
var length=user.length;/* 获取user的字符串的长度 */
var lastcode=emailadd.charCodeAt(positionat-1);
/* 返回一个整数,代表指定位置上字符的 Unicode 编码 */
if(countat!=1||length<6||lastcode>48&&lastcode<57)/* 不符合校验有限的规则 */
{
alert("请输入正确的email地址!");/* 则弹出提示 */
}
else /* 否则 */
{
var positiondot=emailadd.indexOf("."); /* 截取点的位置 */
var server=emailadd.substring(positionat+1,positiondot);/*从@截取到点的位置 字符串 */
var newserver=server.toUpperCase();/* 转成大写 */
alert("您好,来自"+newserver+"的用户!");/* 弹出提示 */
}
} 累死我了 采纳吧
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式