JavaScript Grammar
if
if (condition) {
//when condition is true,execute it.
}
if else
if (condition) {
//when condition is true,execute it.
}else {
//when condition is false,execute it.
}
if…else
if (condition1) {
//when condition1 is true,execute it.
}else if(condition2) {
//when condition2 is true,execute it.
}
......
else{
//when all condition is false,execute it.
}
switch
switch(c1) {
case 1: //code one
break;
case 2: //code two
break;
default: //code other
}
- example
function f1() {
var d = new Date().getDay();
switch (d){
case 1:p="星期一";
default:p="超级期待和某人的周末";
}
document.getElementById("demo").innerHTML=p;
}
<button id="demo" onclick="f1()">Date is</button>
for loop
var i = 0,len = c1.length;
for (;i<len;){
document.write(c1[i] + "<br>");
i++;
}
while loop
- 只要指定条件为true,循环就可以一直执行下去
while (i<10){ //只要i小于10,程序便会一直执行
alert(i);
i++;
}
do while loop
do{
alert(i);
}while (i<10);
break & continue
- break语句用于跳出循环
- continue用于跳过本次,执行下一次迭代
js data type
- data type:string number boolean object function symbol(unique)
- object type:Object Date Array
- other:null undefined
data type transform(convert/switch)
String(10+123);
(10+123).toString();
true.toString(); //"true"
//将日期转换为字符串
obj = new Date();
obj.toString();
//字符串转换为数字
Number("8.28");
Number("13 14"); //NaN 非数字
//布尔值转换为数字
Number(true); //1
regular expression(regex/regexp/RE)
使用单个字符串来描述,匹配一系列符合某个句法规则的字符串搜索模式,搜索模式可用于文本搜索和文本替换。
what’s Regular Expression ?
- 是由一个字符序列形成的搜索模式
- 当你在文本中搜索数据时,可以用搜索模式
- 可以是一个简单的字符,或更复杂的模式
- 可用于所有文本搜索和文本替换的操作
//语法
/正则表达式主体/修饰符(可选)
var p1 = /cyl/i
/cyl/i 是一个正则表达式
cyl 是一个正则表达式主体(用于检索)
i 是一个修饰符(搜索不区分大小写)
在js中,正则表达式通常用于两个字符串方法:search()和replace()
-
search():检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置
-
replace():在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串
-
search
1.search方法(正则表达式)
var str = "welcome to java";
var n = str.search("/java/i"); //n=11
2.search方法(字符串)
var str = "welcome to java";
var n = str.search("java");
- replace
1.replace方法(正则表达式)
var str = document.getElementById("c1").innerHTML;
var t1 = str.replace("/java/i","python");//"python"是替换后的元素
2.replace方法(字符串)
var str = document.getElementById("c1").innerHTML;
var t1 = str.replace("java","python");
regular expression modifiers
- i:执行对大小写不敏感的匹配
- g:执行全局匹配(查找全局匹配而非在找到第一个匹配后停止)
- m:执行多行匹配
regular expression pattern(模式)
- [cyl]:查找括号内的任何字符
- [0-8]:查找0-8的任何数字
- (x|y):查找任何以’|'分割的选项
- \d:查找数字
- \s:查找空白字符
- \b:匹配单词边界
test()
- test()方法是一个正则表达式方法。用于检测一个字符串是否匹配某个模式,如果符合,则返回true
var patt = /a/;
patt.test("China is great!"); //true
//合并代码
/a/.test("China is great!");
exec()
- 用于检索字符串中正则表达式的匹配。该方法返回数组来匹配结果,未找到则返回null值。