首先我们来讲字符串String
转义字符
JavaScript也支持转义字符:即反斜杠引导的字符,表示特殊字符或功能。
’ 单引号 " 双引号 \ 反斜杠 & 和号
\n 换行符 \r 回车符 \t 制表符 \b 退格符 \f 换页符
注意:转义字符不适用html页面文档,仅在JavaScript代码中使用有效。
字符串连接法
表达式 | 结果 |
---|---|
1+“2” | “12” |
1+3+“4”+5+9 | “4459” |
1+(3+“5”)+(7+9) | “13516” |
与一个字符串相加,其结果必然也是字符串
函数parseInt与parseFloat
表达式 | 结果 |
---|---|
parseInt(“42”) | 42 |
parseInt(" 42sdhf ds") | 42 |
parseInt("") | NaN |
parseInt(“tom”) | NaN |
parseInt(“2.56”) | 2 |
parseFloat(“2.56”) | 2.56 |
parseFloat(“2.564ghfgf66”) | 2.564 |
parseFloat(“0.0000000”) | 0 |
parseFloat(“yes83.6”) | NaN |
String方法
方法名 | 功能描述 |
---|---|
charAt(index) | 返回指定位置的字符,(index)从0开始 |
charCodeAt(index) | 返回指定位置的字符的ASCAII编码 |
String.fromCharCode(value) | 返回指定ASCAII码对应的字符串 |
indexof(searchStr) | 返回某个指定字符串值在字符串中首次出现的位置 |
split(delimeter) | 把一个字符串分割成字符串数组 |
substring(start,stop) | 提取字符串中介于两个指定下标之间的字符 |
toLowerCase() | 把字符串换成小写 |
toUpperCase() | 把字符串换成大写 |
trim() | 把字符串两端的空格去掉 |
附上一个加法器的练习
<!DOCTYPE html>
<html>
<head>
<title>模拟计算器</title>
<script src="j4-7.js" type="text/javascript" > </script>
<head>
<body>
<form id="form1">
<h2>模拟计算器</h2>
请在两个文本框输入运算数,单击按钮获取结果<br />
<p>
<input id="x" name="x" size="10" /> <span id="o"> + </span>
<input id="y" size="10" /> = <input id="z" />
</p>
<p>
<input id="add" type="button" value="+" onclick="bfun(this)" />
<input id="sub" type="button" value="-" onclick="bfun(this)" />
<input id="mul" type="button" value="×" onclick="bfun(this)" />
<input id="div" type="button" value="÷" onclick="bfun(this)" />
</p>
</form>
</body>
</html>
function bfun(butt) { //形式参数不允许使用this
var num1, num2, result, fh=butt.value; //获取当前按钮元素名称
var f=document.getElementById("form1"); //根据id获取form表单
num1=f.x.value;
num2=f.y.value;
if (num1>0&&num2>0) {
document.getElementById("o").innerHTML=fh; //为<span>标记设置新运算符
switch(fh) {
case "+" : result=num1*1+num2*1; break; //数据转换
case "-" : result=num1-num2; break;
case "×" : result=num1*num2; break;
case "÷" : result=num1/num2; break;
}
f.z.value=result;
}
else { f.z.value="数据错误,请重新输入"; }
}
注意在switch语句,case “+”,这里不要有空格case " + "
,其意思是 +不等于" + ",其result会出现初始默认的undefinded