错了,是错了,修改完了,还是不知道哪里错了。就这样莫名其妙的错了,又莫名其妙的没问题了。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>string learn 01</title>
<style>
span{
background-color: lightgray;
}
#beGoodMan{
color:brown;
}
.God{
color:black;
background-color: aliceblue;
font-weight: bold;
}
</style>
</head>
<body>
<form>
<p>1.隐藏电话号码中间4位数</p>
<button type="button">点击隐藏</button>
<input type="text"/><br />
<p>2.获取文件后缀名</p>
<button type="button">判断文件类型</button>
<input type="file"><br />
<span id="f_type">[未检测到文件!]</span>
<p>3.统计字符串中出现的所有字符和各个字符出现的次数</p>
<button type="button">获取统计结果</button>
<input type=""/><br /> <!--本来想改成 <textarea row="10" cols="30">sometext</textarea>的.-->
<p id="tj_3"></p>
<p>4.一段文字中敏感词汇用星号代替.</p>
<input type="text" value="操你妈3-死逼1-傻逼0-淘宝2"/>
<button type="button">敏感词替换</button><br />
<p><span class="God">接受神的洗礼把,孩子:</span><span id="beGoodMan"></span></p>
</form>
<script type="text/javascript">
var t = document.getElementsByTagName("input");
var btn=document.getElementsByTagName("button");
//1.隐藏电话号码中间4位数:
btn[0].onclick=function(){
//t[0].value=="" || t[0].value == null ||
if(isNaN(t[0].value)|| t[0].value.length!=11 ){
t[0].value=null;
alert("输入有误,请重新输入");
return;
}
var tel=t[0].value.toString();
//012 3456 789 10
tel = tel.replace(tel.substr(3,4),'****');
t[0].value=tel;
}
//2.获取文件后缀名:
btn[1].onclick=function(){
var id=document.getElementById("f_type");
var f = t[1].value.toString();
f=f.substr(f.lastIndexOf('.')+1); //注意有的文件么有后缀类型;
switch(f){
case 'txt': id.innerHTML="Txt:通用平台文本文件类型"; break;
case 'dll': id.innerHTML="dll:WinOs 动态链接库文件"; break;
default : id.innerHTML="抱歉!暂时无法获取您的文件类型"; break;
}
}
//3.统计字符串中出现的所有字符和各个字符出现的次数
btn[2].onclick=function(){
var id=document.getElementById("tj_3");
var txt=t[2].value.toString();//转换成字符串;
if(txt=="" || txt==null){ //错误判断
alert("输入有误,请重新输入!");
txt.value=null;
return;
}
var cz=""; //用于存储已经做过比较的字符;
id.innerHTML=null;//防止再次执行函数,内容一直递增的问题;
loop:
for(var i=0;i<txt.length;i++){ //主要外层循环; // fafcfdfefxfo; 测试字符串;
var n=0;//每次重置为0作统计;
for(var j=0;j<cz.length;j++){ //向左递减,如果发现目前字符与cz字串中任意一个字符相等则跳过这个字符。
if(cz[j]==txt[i]){
continue loop;
}
}
for(var j=i;j<txt.length;j++){ //向右递增;
if(txt[j]==txt[i]){
n++;
}
}
cz+=txt[i];
id.innerHTML+=("字符 "+txt[i]+" 出现的次数: "+n+";<br/>")
}
id.innerHTML+=("统计结果总共有:"+cz.length+"个不同的字符.");
}
//4.一段文字中敏感词汇用星号代替:
btn[3].onclick=function(){
var character = ["你大爷","taobao","淘宝","操你妈","傻逼","死","fuck","怂人","蠢","丑逼"];
var txt = t[3].value.toString();
if(txt==""|| txt==null){
alert("世界为何总是要存在无声的沉默?");
t[3].value=null;
return;
}
var id = document.getElementById("beGoodMan");
for(var i=0;i<character.length;i++){
alert(i+" "+character.length+" "+txt.length);
if(txt.match(character[i])!=null){
txt=txt.replace(character[i],editChar(character[i].length))
alert(i+" "+txt);
}
}
id.innerHTML=(txt);
}
function editChar(charLength){ //计算敏感词长度,并替换为相应长度的星号.
var character="";
for(var i=0;i<charLength;i++){
character+="*";
}
return character;
}
</script>
</body>
</html>
<!--时间:2017-03-29
Math
Date
DOM= document object mode
.getFullyear(); .getHours(); ....
document.title
document.body.clientWidth / clientHeight;
document.documentElement.clientWidth /clientHeight;
document.getElementById("demo");
window
innerHeight innerWidth
alert() confirm() prompt()
open() close();
-->
<!--时间:2017-03-29 单词
[variables 变量]
client 客户端
server 服务器
browser 浏览器
C/S 客户端/服务器
B/S 浏览器/服务端
-->
<!--时间:2017-03-29
String Object:
1.var a = "Hello String.";
2.属性: a.length;
3.方法: a.charAt(3); //获取某个位置的字符;
a.replace('c','q'); 替换字符,所有c替换为q;
a.substr(0,5); 获取 从0开始之后5个长度的字符;
a.substring(2,5); 获取2开始到5结束之间的字符;
toLowerCase(); //全部小写
toUpperCase(); //全部大写
a.indexOf('e'); //字符首次出现的位置;
a.lastIndexOf('e'); //字符最后出现的位置;
-->