web学习记录-JS-9
正则表达式
用于定义一些字符串的规则,计算机可以用来检查一个字符串是否符合规则;将字符串中符合规则的内容提取出来;
创建正则表达式的对象 var 变量 = new RegExp(“正则表达式”,“匹配模式”);使用typeof检查会返回object;
方法 test();符合返回true;反之则返回false;
var result = str.reg(“a”)
可传递一个匹配模式作为第二个参数;I ,忽略大小写;g,全局匹配模式;
使用字面量创建正则表达式; var 变量 = /正则表达式/匹配模式;
创建一个正则表达式,检查字符串有a或b var reg = /a|b/; var reg = /[ab]/; var reg = /[a-z]/,任意的小写字母; [A-Z], 任意大写字母;[A-z],任意字母;
检查一个字符串是否含有abc aec afc reg=/a[bdc]c/
[^ ]除了中括号的内容;
split() 将字符串拆分为数组;不设置全局也会全拆;
根据任意字符将字符串拆分 方法中可传递一个正则表达式作为参数; str.split(/[A-z]/);
search() 可以搜索字符串是否含有自定内容;即时设置全局匹配,也只会查找第一个;
有则返回第一次出现索引,没有则返回-1,可接受正则表达式作为参数,去检索字符串; srt.seach(/a[bef]b/);
match() 可根据正则表达式,从字符串中将符合条件的内容提取出来; str.match(/[A-z]/);
默认只找到第一个符合要求就停止,可设置为全局匹配模式,则会匹配所有符合条件的内容,可为一个正则表达式设置多个匹配模式;
会将匹配到的内容封装到一个数组中返回,即时只有一个结果;
replace()可将字符串中的指定内容替换为新内容;需两个参数,1,被替换的内容,2,新的内容;
默认只会替换第一个; str.replace(/[a-z]/ig,“”)可设正则表达式为全局变量;
量词 可以设置一个内容的次数; var reg = /a{次数}/;只对前面的一个内容起作用;可以小括号圈起内容;
reg = /b{1,3}/;出现1-3次都可以;
reg = /b{1,}/;出现1次以上; +,相当于{1,}至少一个;*,相当于{0,}有没有都行;?,相当于{0,1}没有或只有1个;
reg = /^a/;表示开头; reg=/a$/;表示结尾;如果同时使用,表示表达式得完全符合正则表达式;
var reg= /./; . 表示任意字符;用\.表示字符. ; 用\\表示\符号;
注意: 使用构造函数时,由于参数是一个字符串,而\是字符串中的转义字符,如果使用\则用\\来代替;
\w 任意字母,数字,_
\W 除了字母,数字,_
\d 任意数字;
\D 除了任意数字;
\s 空格;
\S 除了空格;
\b 单词边界;
\B 除了单词边界;
str = str.replace(/^\s*|\s$/g,"");//去除开头结尾的空格;
电子邮箱的正则表达式
任意字母数字下划线 .任意字母下划线@任意字母数字.任意字母(2-5位).任意字母(2-5位)
^\w{3,}(\.\w+)*@[A-z0-9]+(\.[A-z]{2,5}){1,2}$
DOM Document Object Model 文档对象模型。
节点 文档节点 #document 9 null
元素节点 标签名 1 null
属性节点 属性名 2 null
文本节点 #text 3 文本内容
浏览器的已经为我们天宫文档节点对象,这个对象是window属性可以在网页直接使用,文档节点代表的是整个网页
<button id="btn">我是一个按钮</button>
获取button对象
var btn = document.getElementById("btn");
修改按钮的文字
btn.innerHTML = "修改内容”;
事件 用户与浏览器的交互行为,点击,鼠标移动,关闭窗口等;
我们可以在事件对应的属性中设置一些JS代码;事件触发时,执行JS代码;(不推荐)
可以为按钮的对应事件绑定处理函数的形式来相应事件;
获取按钮对象 var btn = document.getElementById("btn");
绑定一个单击事件 btn.onclick = function(){ alert("点击按钮后"); };
文档的加载
浏览器加载一个页面时,按照自上向下的顺序加载的,读取一行执行一行,如果写到script标签写到页面上边,在代码执行时,页面还没有加载;
onload事件会在整个页面加载完成之后才触发,绑定在window.onload = function(){ };会在页面加载完成后执行,可以确保代码执行时DOM对象已经加载完毕;
方法
获取元素节点 通过document对象调用;
1,getElementById() 通过ID属性获取一个元素节点对象;
2,getElementsByTagName()通过标签名获取一组元素节点对象;
3,getElementsByName() 通过name属性获取一组元素节点对象;