经过接近一周的Js学习,发觉js还是有很多的不通畅的地方,今天就来做一个小结。
首先,Javascript的技术体系主要分为核心语言定义,内置和原生对象,浏览器对象模型BOM以及文档对象模型,最后还有各个浏览器的事件处理模型;
在对象中访问节点一般使用getElementById();getElementsByTagName();以及getElementsByName();三种方法。
使用Javascript对元素的属性进行操纵时,只能直接对内联的属性或者样式进行;否则需要先进行初始化。
在函数未被执行前,其内部的代码是不会执行的。
鼠标事件包括:按下mousedown,释放mouseup,单击事件click,双击事件dbclick;鼠标悬停mouseover;鼠标移出mouseout;
键盘事件只有三个:按下keydown;长按keypress;释放keyup;
其中keypress事件只有出了Alt,Shift等之外的字符键才有;
html事件共有12个,较常用的有load,focus,select,change,submit,reset这几个事件;
最后就是令人头痛的正则表达式了:
正则表达式是一种记录文本规则的代码。
创建正则表达式有两种办法:
1. var reg =/规则(pattern)/;
2. var reg = new RegExp('pattern(规则)');
语法:reg(规则表达式).exec(str(字符串));
strobj(原始字符串).replace("pattern, ");
reg(规则表达式).test(str(字符串));
下面是复制的一些常用的规则:
整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 或者:/^\d{0,}\.?\d*$/
只能输入数字:"^[0-9]*$"。 ^\d{0,}$
只能输入n位的数字:"^\d{n}$"。
只能输入至少n位的数字:"^\d{n,}$"。
只能输入m~n位的数字:。"^\d{m,n}$"
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。 ^\d*$
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。 ^\d+(.\d{2})?$
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
只能输入非零的正整数:"^\+?[1-9][0-9]*$"。
只能输入非零的负整数:"^\-[1-9][]0-9"*$。
只能输入长度为3的字符:"^.{3}$"。
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。 ^[^_\s]+$
只能输入由数字、26个英文字母或者下划线组成的字符串:"^\w+$"。 ^[a-zA-Z0-9_]+$