js接口是什么?

js接口是什么?,第1张

javascript中的接口就类似于java中的interface,是用function定义的语句块。\x0d\x0a\x0d\x0a 在javascript中模仿接口 \x0d\x0a 首先,我们可以定义一个公共的接口类: Interface,接着我们考虑下接口类需要有哪些成员和方法。 \x0d\x0a 1)接口是一组方法签名的集合,其他内置接口的语言可以在接口中进行函数声明,从而定义一个接口;而在javascript中,我们需要通过给Interface类厅纳改增加一个数组成员,保存方法名称,我命名扮判为:methods,另外还有个成员:name,这个成员是接口名,方便我们快速定位错误—比如我们的对象到底是没实现哪个接口的哪个方法。\x0d\x0a 2) 在有内置接口的语言中,若一个类继承了某个接口,而未实现其中的一个或多个方法时,编茄扮译器会报错,从而提醒开发人员,但是javascript是无法提供这个功能的,所以在我们的Interface类中需要一个方法来保证在未实现某接口的所有方法时,抛出一个错误。 这个方法我们可以命名为:ensureImplents, 另外这个方法是可通用的,所以可以作为一个静态方法,即Interface的方法,而不需要在其每个实例中保存。

Document Object Model文档对象模型(JS用document *** 作网页)

Application Programming Interface应用程序接口,是一些预先定义的接口(函数,HTTP接口)

Chrome会有显示错误

自身属性:className、id、style等等

第一层 原型 HTMLDivElement.prototype :这是所有div共有的属性

第二层 原型 HTMLElement.prototype :这是所有HTML标签共有的属性

第三层 原型 Element.prototype :这是所有XML、HTML标签共有的属性

第四层 原型 Node.prototype :这是所有节点共有的属性,包括XML标签文本注释、HTML标签文本注释等等

第五碧困层 原型 EventTarget.prototype :里面最重要的函数属性是addEventListener

第六层 原型 Object.prototype

MDN中相关知识

创建一个标签节点

创建一个文本节点

标签里插入文本

插入页面中

创建的标签默认处于JS线程中,必须把它插入到head或者body里面才会生效, document.body.appendChild(div) 或者已在页面中的 元素.appendChild(div)

appendChild

假设页面中有div#test1和div#test2

那么div最终会出现在哪里呢?

答案:只在test2中,一个元素不能出现在两个地方,除非复制一份 node.cloneNode

如果一个node被移除页面(DOM树)那么他还可以再次回到页面中吗?

改class

改style

改style的一部分

注意大小写

改date属性

正常/特殊的读属性

(特殊)若使用

需要使用

这两种方法都可,但是值可能稍有不同

改事件处理函数

div.onclick 默认为null,默认点击div不会发生任何事,但是如果把 div.onclick 改为一个函数fn,那么点击div的时候,浏览器就会调用这个函数,并且是这样调用的 fn.call(div,event) ,div会被当做this,event则包含了点击事件的所有信息(如:坐标)

div.addEventListener 是 div.onclick 的升级版,蚂慧汪后面会说明

查爸爸

查爷爷

查儿子

查兄弟姐妹

遍历div里面所有的元素

浏览器有渲染引擎和JS引擎

各线程闷仔各司其职。JS引擎不能 *** 作页面只能 *** 作JS;渲染引擎只能 *** 作页面。

那么

这句JS是如何改变页面的呢?

跨线程通讯

当浏览器发现JS在body里面加了div1对象,就会通知渲染引擎在页面里也新增一个div元素,新增的div元素所有属性都照抄div1对象

JS线程中的所有属性叫做 div1的property

渲染引擎中div1对应标签的属性叫做 Attribute

区别


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12530601.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存