一、addEventListener和onClick()的区别
1.onclick事件在同一时间只能指向唯一对象,addEventListener给一个事件注册多个listener
2.addEventListener对任何DOM都是有效的,而onclick仅限于HTML
核心DOM :
对象:Document,Node, ElementNode, TextNode,AttributeNode,CommentNode, NodeList
核心DOM提供了统一的操作接口,如:createElement、appendChild、setAttribute等
核心DOM创建新元素:var newNode = document.createElement(“img”)
给元素添加属性:e.setAttribure()、e.setAttribureNode()
适用场合:核心DOM适合操作节点,如创建,删除,查找等
HTML DOM :
对象:image, Table, Form, Input,Select等等HTML标签对象化
HTML DOM提供了封装好的各种对象,如:Select、Option等等
适用场合:HTML DOM适合操作属性,如读取或修改属性的值
3.addEventListener可以控制listener的触发阶段,(捕获/冒泡)。
二、new和Object.create的区别
function Person() {
this.name = 2
}
var a = new Person()
var b = Object.create(Person.prototype)
console.log(a._proto_ === b._proto_) / / true
Object.create比较灵活,可以任意指定创建出来的实例的原型,常用于创建一个以空对象为原型的实例。
三、DOM的location对象
Location 对象表示的却是浏览器当前显示的文档的 URL(或位置)。但是 Location 对象所能做的远远不止这些,它还能控制浏览器显示的文档的位置。如果把一个含有 URL 的字符串赋予 Location 对象或它的 href 属性,浏览器就会把新的 URL 所指的文档装载进来,并显示出来。
除了设置 location 或 location.href 用完整的 URL 替换当前的 URL 之外,还可以修改部分 URL,只需要给 Location 对象的其他属性赋值即可。这样做就会创建新的 URL,其中的一部分与原来的 URL 不同,浏览器会将它装载并显示出来。例如,假设设置了Location对象的 hash 属性,那么浏览器就会转移到当前文档中的一个指定的位置。同样,如果设置了 search 属性,那么浏览器就会重新装载附加了新的查询字符串的 URL。
除了 URL 属性外,Location 对象的 reload() 方法可以重新装载当前文档,replace() 可以装载一个新文档而无须为它创建一个新的历史记录,也就是说,在浏览器的历史列表中,新文档将替换当前文档。
后续请关注作者,经常更新