javaScript总结(21-25)

二十一、说说你对DOM的理解,常见的操作有哪些?

小结:DOM全称document object model
文档对象模型,是html和xml文档的编程接口,他提供了对文档结构化的表述。并定义了一种方式可以对文档的结构样式和内容进行改变。
dom常见操作有创建节点,增,删,改,查节点,创建:createElement,createTextNode,createAttribute,
增:innerHtml,appendChild 删:remobeChild
改:innerHtml,innerText,innerContent
查:也叫获取节点,querySelector,querySelectorAll,getElementById,getElementByTagName,getElementByClassName

二十二、 说说你对BOM的理解,常见的BOM对象你了解哪些?

小结:BOM全称browser object model
浏览器对象模型,是浏览器与内容交互的对象。其作用就是跟浏览器做一些交互效果,例如页面的前进、后退,刷新、浏览器窗口变化,滚动条的滚动以及一些浏览器信息,浏览器版本等

二十三、举例说明你对尾递归的理解,有哪些应用场景

小结:尾递归就是在函数尾部调用自己的方式,相较于普通尾调的基础上,多了两个特征,一个是调用的是自己,另一个是仅计算占用常量栈空间。普通递归和调用其他函数一样,都会为函数创建一个新的栈帧,压入调用栈中,而尾递归中,当前语句是最后一条待执行语句,于是调用返回时栈帧中并没有其他事情可做,因此就没有保存栈帧的必要了,而是通过覆盖当前栈帧而不是在重新添加,这样所使用的栈空间就会大大缩减,效率就会大大提高。

二十四、说说 JavaScript 中内存泄漏的几种情况?

小结:内存泄漏就是程序运行中,由于疏忽或错误造成未能释放不再使用的内存。这种现象就叫做内存泄漏。
出现这种现象的原因是因为垃圾回收机制中使用的是引用计数法,在程序运行过程中,使用的数据会打上标记,当引用次数为0时,就表示这个值用不到了,这个值就会被释放,但是有时会出现不在使用某些值,但引用次数却不为0,这时内存就不会被释放。
出现情况:
1.意外的全局变量。函数中未使用let,var,const定义变量,这个值会作为全局变量定义,引用次数为1,但全局中不使用它。
2.函数中用this创建变量。
3.定时器

二十五、JavaScript中本地存储的方式有哪些?区别及应用场景?

小结:cookie 小型文本文件,不超过4kb,由name和value还有其他几个用于控制有效期,安全性,使用范围的可选属性组成。
localStorage 本地持久化存储,自己不删除,永久存在,存储的大小与浏览器厂商有关,一般5M。
sessionStorage使用方法与localStorage使用方法相似,唯一不同的是生命周期,当页面一关闭,数据会自动删除
indexedDB用于存储大量结构化数据
区别
存储大小:cookie只有4kb,sessionStorage和localStorage 5M甚至更大,与浏览器厂家有关
有效时间:cookie可以自己设置过期时间,sessionStorage在关闭会话或浏览器时自动删除,localStorage永久保存
数据与服务器交互方式:cookie可以自动传入服务器,服务器也可以写数据到客户端
sessionStorage和localStorage不会自动发送数据。
使用场景:cookie:标记用户或跟踪用户行为
sessionStorage:敏感账号登录
localStorage:长期保存的本地令牌

注意:学习总结
参考链接:https://github.com/febobo/web-interview

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值