JS输出数据方法:
- 使用 window.alert() 弹出警告框。
- 使用 document.write() 方法将内容写到 HTML 文档中。
- 使用 innerHTML 写入到 HTML 元素。
- 使用 console.log() 写入到浏览器的控制台。
JS数据类型:
- var length = 16; // Number 通过数字字面量赋值
- var points = x * 10; // Number 通过表达式字面量赋值
- var lastName = "Johnson"; // String 通过字符串字面量赋值
- var cars = ["Saab", "Volvo", "BMW"]; // Array 通过数组字面量赋值
- var person = {firstName:"John", lastName:"Doe"}; // Object 通过对象字面量赋值
以下是 HTML 事件的实例:
- HTML 页面完成加载
- HTML input 字段改变时
- HTML 按钮被点击
HTML时间列表:
- onchange HTML 元素改变
- onclick 用户点击 HTML 元素
- onmouseover 用户在一个HTML元素上移动鼠标
- onmouseout 用户从一个HTML元素上移开鼠标
- onkeydown 用户按下键盘按键
- onload 浏览器已完成页面的加载
----------------------------------------------------------------------------------
特殊字符:
\' 单引号
\" 双引号
\\ 反斜杠
\n 换行
\r 回车
\t tab(制表符)
\b 退格符
\f 换页符
变量类型获取:
typeof
----------------------------------------------------------------------------------
typeof "JiaNan" // 返回 string
typeof 3.14 // 返回 number
typeof false // 返回 boolean
typeof [1, 2, 3] // 返回 object
typeof {name: 'John', age:34} // 返回 object
typeof null // 返回 object
typeof undefined // 返回 undefined
字符串相关处理函数:
- charAt() 返回指定索引位置的字符
- charCodeAt() 返回指定索引位置字符的 Unicode 值
- concat() 连接两个或多个字符串,返回连接后的字符串
- fromCharCode() 将 Unicode 转换为字符串
- indexOf() 返回字符串中检索指定字符第一次出现的位置
- lastIndexOf() 返回字符串中检索指定字符最后一次出现的位置
- localeCompare() 用本地特定的顺序来比较两个字符串
- match() 找到一个或多个正则表达式的匹配
- replace() 替换与正则表达式匹配的子串
- search() 检索与正则表达式相匹配的值
- slice() 提取字符串的片断,并在新的字符串中返回被提取的部分
- split() 把字符串分割为子字符串数组
- substr() 从起始索引号提取字符串中指定数目的字符
- substring() 提取字符串中两个指定的索引号之间的字符
- toLocaleLowerCase() 根据主机的语言环境把字符串转换为小写,只有几种语言(如土耳其语)具有地方特有的大小写映射
- toLocaleUpperCase() 根据主机的语言环境把字符串转换为大写,只有几种语言(如土耳其语)具有地方特有的大小写映射
- toLowerCase() 把字符串转换为小写
- toString() 返回字符串对象值
- toUpperCase() 把字符串转换为大写
- trim() 移除字符串首尾空白
- valueOf() 返回某个字符串对象的原始值
for 循环:
var cars = ["A", "B", "C", "D"];
for (var i=0;i");
}
switch语句:
var day;
var d=new Date().getDay()
switch(d) {
case 0:
day = "星期天";
break;
case 1:
day = "星期一";
break;
case 4:
day = "星期四";
break;
}
Date相关函数:
- getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。
- getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。
- getFullYear() 从 Date 对象以四位数字返回年份。
- getHours() 返回 Date 对象的小时 (0 ~ 23)。
- getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。
- getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。
- getMonth() 从 Date 对象返回月份 (0 ~ 11)。
- getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。
- getTime() 返回 1970 年 1 月 1 日至今的毫秒数。
JS正则表达式:
JS中的正则表达式:
1、search() 方法 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。
2、replace() 方法 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
// [abc] 查找方括号之间的任何字符。包含其中一个即为true
var patt2 = /[zxcv]/;
var str2 = "1c2332z";
var b2 = patt2.test(str2);
console.log("[abc]正则测试" + b2)
// [^abc] 查找任何不在方括号之间的字符。
var patt3 = /[^zxcv]/;
//var str3 = "zxczzzzz"; // false
var str3 = "zx"; // false
//var str3 = "zxcv1"; // true
var b3 = patt3.test(str3);
console.log("[^abc]正则测试" + b3)
// [0-9] 查找任何从 0 至 9 的数字。
var patt3 = /[2-3]|[6-8]/;
//var str3 = "5"; // false
//var str3 = "a5"; // false
//var str3 = "3"; // true
var str3 = "7"; // true
var b3 = patt3.test(str3);
console.log("[0-9]正则测试" + b3)
// [a-z] 查找任何从小写 a 到小写 z 的字符。
var patt4 = /[a-f]/;
//var str4 = "az"; // true
//var str4 = "xzz"; // false
//var str4 = "xzacdz"; // true
var str4 = "A"; // false
var b4 = patt4.test(str4);
console.log("[a-z]正则测试" + b4);
// [A-Z] 查找任何从大写 A 到大写 Z 的字符。
// 示例同上
// [A-z] 查找任何从大写 A 到小写 z 的字符。
// 示例同上
// . 查找单个字符,除了换行和行结束符。
/* g执行全局匹配;// 加g检索全局才结束,不加g检索到了就结束
* i执行对大小写不敏感的匹配;
* m执行多行匹配。*/
// match 找到一个或多个正则表达式的匹配。
/*
var patt5 = /a..c/g;
var str5 = "azdc";
*/
var patt5 = /a.c/;
//var str5 = "a1cz"; // true
var str5 = "fdafa,a1c,"; // true
var b5 = patt5.test(str5);
var s5 = str5.match(patt5);
console.log(".正则测试" + b5 + "\n结果:" + s5);
// \w 查找单词字符。
var patt6 = /\w/; // 结果b
var patt6 = /\w/g; // 结果b,c,d,1,2,3
var str6 = "bcd*(^123";
var b6 = patt6.test(str6);
var s6 = str6.match(patt6);
console.log("\w正则测试" + b6 + "\n结果:" + s6);
// \W 查找非单词字符。
var patt7 = /\W/; // 结果*
var patt7 = /\W/g; // 结果*(^
var str7 = "bcd*(^123";
var b7 = patt7.test(str7);
var s7 = str7.match(patt7);
console.log("\W正则测试" + b7 + "\n结果:" + s7);
// \d 查找非单词字符。
var patt8 = /\d/; // 结果1
var patt8 = /\d/g; // 结果123
var str8 = "bcd*(^123";
var b8 = patt8.test(str8);
var s8 = str8.match(patt8);
console.log("\d正则测试" + b8 + "\n结果:" + s8);
// \D 查找非数字字符。
// 参考上个示例
// \s 查找空白字符。 被检索字符串无空格b9=false,s9=null
var patt9 = /\s/; // 结果 此处有一个空格
var patt9 = /\s/g; // 结果 , , 此处有三个空格
var str9 = "bcd* (^1 23";
var b9 = patt9.test(str9);
var s9 = str9.match(patt9);
console.log("\s正则测试" + b9 + "\n结果:" + s9);
// \S 查找非空白字符。
// 参考上个示例
// \b 匹配单词边界。
//var patt10 = /\bbc/; // s10=null
var patt10 = /\Bzbbc/g; // s10=zbbc
var str10 = "abc zbbc";
var b10 = patt10.test(str10);
var s10 = str10.match(patt10);
console.log("\\b正则测试" + b10 + "\n结果:" + s10);
// \B 匹配单词边界。
var patt11 = /\Bbc/; // s11=bc
//var patt11 = /\Bbc/g; // s11= bc,bc
var str11 = "abc zbbc";
var b11 = patt11.test(str11);
var s11 = str11.match(patt11);
console.log("\\B正则测试" + b11 + "\n结果:" + s11);
// \0 查找 NULL 字符。
// \n 查找换行符。
var patt12 = /\n/;
//var str12 = "abc \\nzbbc"; // false null
var str12 = "abc \n\nzbbc"; // true
var b12 = patt12.test(str12);
var s12 = str12.match(patt12);
console.log("\\n正则测试" + b12 + "\n结果:" + s12);
// \f 查找换页符。
// 示例如上
// \r 查找回车符。
// 示例如上
// \t 查找制表符。
// 示例如上
// \v 查找垂直制表符。
// 示例如上
// n+ 匹配任何包含至少一个 n 的字符串。
//var patt13 = /b+/g; // abc,zbbc
//var patt13 = /\w+/g; // b,bb
//var patt13 = /bc+/g; // bc,bc
var patt13 = /zbc+/g; // null
var str13 = "abc zbbc";
var b13 = patt13.test(str13);
var s13 = str13.match(patt13);
console.log("n+正则测试" + b13 + "\n结果:" + s13);
// n* 匹配任何包含零个或多个 n 的字符串。
var patt14 = /b*/g; // ,b,,,,bb,,
//var patt14 = /\w*/g; // abc,,zbbc,
//var patt14 = /bc*/g; // bc,b,bc
//var patt14 = /zbc*/g; // zb
//var patt14 = /d*/g; // ,,,,,,,,
var str14 = "abc zbbc";
var b14 = patt14.test(str14);
var s14 = str14.match(patt14);
console.log("n*正则测试" + b14 + "\n结果:" + s14);
// n? 匹配任何包含零个或一个 n 的字符串。
//var patt15 = /b?/g; // ,b,,,,b,b,,
//var patt15 = /\w?/g; // a,b,c,,z,b,b,c,
//var patt15 = /bc?/g; // bc,b,bc
//var patt15 = /zbc?/g; // zb
var patt15 = /d?/g; // ,,,,,,,,
var str15 = "abc zbbc";
var b15 = patt15.test(str15);
var s15 = str15.match(patt15);
console.log("n?正则测试" + b15 + "\n结果:" + s15);
// n{X} 匹配包含 X 个 n 的序列的字符串。
//var patt16 = /b{1}/g; // b,b,b
//var patt16 = /b{2}/g; // false bb
//var patt16 = /d{3}/g; // false null
var patt16 = /z{3}/g; // zzz,zzz,zzz
var str16 = "abc zbbczzzzzzzz hhhzzzz";
var b16 = patt16.test(str16);
var s16 = str16.match(patt16);
console.log("n{X}正则测试" + b16 + "\n结果:" + s16);
// n{X,} X 是一个正整数。前面的模式 n 连续出现至少 X 次时匹配。
//var patt17 = /b{1}/g; // b,b,b
//var patt17 = /b{2}/g; // false bb
//var patt17 = /d{3}/g; // false null
var patt17 = /z{3}/g; // zzz,zzz,zzz
var str17 = "abc zbbczzzzzzzz hhhzzzz";
var b17 = patt17.test(str17);
var s17 = str17.match(patt17);
console.log("n{X,}正则测试" + b17 + "\n结果:" + s17);
// n{X,Y} X 和 Y 为正整数。前面的模式 n 连续出现至少 X 次,至多 Y 次时匹配。
var patt18 = /b{1,2}/g; // b,bb
//var patt18 = /b{1,3}/g; // b,bb
//var patt18 = /d{2,7}/g; // false null
//var patt18 = /z{3,5}/g; // zzzzz,zzz,zzzz
var str18 = "abc zbbczzzzzzzz hhhzzzz";
var b18 = patt18.test(str18);
var s18 = str18.match(patt18);
console.log("n{X,Y}正则测试" + b18 + "\n结果:" + s18);
// n$ 匹配任何结尾为 n 的字符串。
//var patt19 = /z$/g; // z
//var patt19 = /b$/g; // null
var patt19 = /c$/g; // null
var str19 = "abc zbbczzzzzzzz hhhzzzz";
var b19 = patt19.test(str19);
var s19 = str19.match(patt19);
console.log("n$正则测试" + b19 + "\n结果:" + s19);
// ^n 匹配任何开头为 n 的字符串。
// 示例同上
// ?=n 匹配任何其后紧接指定字符串 n 的字符串。
//var patt20 = /bc(?= czbbc)/g; // false null
var patt20 = /bc(?= zbbc)/g; // true bc
var str20 = "abc zbbczzzzzzzz hhhzzzz";
var b20 = patt20.test(str20);
var s20 = str20.match(patt20);
console.log("?=n正则测试" + b20 + "\n结果:" + s20);
// ?!n 匹配任何其后没有紧接指定字符串 n 的字符串。
// 示例同上