javascript重点笔记
操作符之间的优先级(高到低):算术操作符 》比较操作符 》逻辑操作符 》"="赋值符号
算术运算符
比较运算符
逻辑运算符
数组
1.创建的新数组是空数组,没有值,如输出,则显示undefined。
2.虽然创建数组时,指定了长度,但实际上数组都是变长的,也就是说即使指定了长度为8,仍然可以将元素存储在规定长度以外。
substring() 方法用于提取字符串中介于两个指定下标之间的字符
stringObject.substring(starPos,stopPos)
注意:
1. 返回的内容是从 start开始(包含start位置的字符)到 stop-1 处的所有字符,其长度为 stop 减start。
2. 如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
3. 如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。
substr() 方法从字符串中提取从 startPos位置开始的指定数目的字符串
stringObject.substr(starPos,stopPos)
注意:
如果参数startPos是负数,从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。
如果startPos为负数且绝对值大于字符串长度,startPos为0。
sort()方法使数组中的元素按照一定的顺序排列
arrayObject.sort(方法函数)
参数说明:
1.如果不指定<方法函数>,则按unicode码顺序排列。
2.如果指定<方法函数>,则按<方法函数>所指定的排序方法排序。
注意:
该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:
若返回值<=-1,则表示 A 在排序后的序列中出现在 B 之前。
若返回值>-1 && <1,则表示 A 和 B 具有相同的排序顺序。
若返回值>=1,则表示 A 在排序后的序列中出现在 B 之后。
事件冒泡解释
即事件最开始由最具体的元素(文档中嵌套层次最深的那个结点)接收,然后逐级向上传播至最不具体的那个结点(文档)
事件捕获解释
不太具体的结点应该更早接受到事件,而最具体的结点最后接受到事件。
事件处理程序类别
1.html事件处理程序,直接html中添加事件
<div class="up_out" onclick="alert()">点击</div>
2.DOM0级事件处理程序,id获取元素,绑定事件
document.getElementById('').onclick=function(){}
3.DOM2级事件处理程序,addEventListener()和removeEventListener(),有浏览器兼容问题
document.getElementById('').addEventListener('click',function(){})
4.问题IE6-8:attachEvent()和decachEvent(),参数问题要区分onclick
document.getElementById('').attachEvent('onclick',function(){})
5.跨浏览器 重点:element.onclick===element[onclik]
var eventUtil={ // 添加句柄 addHandler:function(element,type,handler){ if(element.addEventListener){ element.addEventListener(type,handler,false); }else if(element.attachEvent){ element.attachEvent('on'+type,handler); }else{ element['on'+type]=handler; } }, // 删除句柄 removeHandler:function(element,type,handler){ if(element.removeEventListener){ element.removeEventListener(type,handler,false); }else if(element.detachEvent){ element.detachEvent('on'+type,handler); }else{ element['on'+type]=null; } }, getEvent:function(event){
//IE兼容 return event?event:window.event; }, getType:function(event){ return event.type; }, getElement:function(event){ return event.target || event.srcElement; }, preventDefault:function(event){ if(event.preventDefault){ event.preventDefault(); }else{ event.returnValue=false; } }, stopPropagation:function(event){ if(event.stopPropagation){ event.stopPropagation(); }else{ event.cancelBubble=true; } } }
前端切图小弟一枚,文中如果错误欢迎指出,小弟厦门工作,如有同行可以加个Q410232098,交流学习;
GitHub仓库地址:https://github.com/chenruifu/blog;欢迎给个Star
↓↓打个广告,个人运营的公众号:前端读者(fe_duzhe)
扫码关注,回复【前端视频】获取上百G前端教学视频