随笔分类 - 面试题js
摘要:https://www.cnblogs.com/web-learn/p/15334323.html https://blog.csdn.net/lee_uncle/article/details/128914641
阅读全文
摘要:答:相同点:只适用于外联脚本,这一点和defer一致,也就是script标签要有src属性。 不同点:async和defer的执行时机不同,async是在加载完后立即执行,执行的过程仍会阻塞后续html的解析。defer是在html解析完,DomCOntentLoaded 和load之前之前执行 参
阅读全文
摘要:答:当使用一个参数,会进行内存的分配,内存的使用,内存的释放。 什么会导致内存泄露 答:1.意外的全局变量 =》必须确保在使用过后将它设置为null 2 定时器 =》 清除定时器 3事件绑定时addEventLister使用的参数,在使用完没有removeEventList =》移除绑定事件 4 减
阅读全文
摘要:ajax的请求 答:1.创建一个ajax对象 const xhr = new XMLHttpRequest() 2.配置连接信息 xhr.open('get', './data.php') // xhr.open('请求方式', '请求地址', 是否异步) 3发送请求 .xhr.send() aja
阅读全文
摘要:答:当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域。同源策略并不是浏览器不让请求发出去、或者后端拒绝返回数据。实际情况是请求正常发出去了,后端也正常相应了,只不过数据到了浏览器后浏览器不去作用加载而是丢弃了。 如何跨域 答:jsonp 1.声明一个回调函数,其函数名(
阅读全文
摘要:答:共同点:都是保存在浏览器端、且同源的 区别: 1、cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递,而sessionStorage和localStorage不会自动把数据发送给服务器,仅在本地保存。cookie数据还有路径(path)的概念,
阅读全文
摘要:一、http请求的完整过程简述 1、域名解析:使用DNS协议进行域名解析 2、建立连接:发起TCP三次握手 3、发起http请求:建立TCP连接成功后,浏览器发起http请求 4、响应http请求:服务端响应http请求,浏览器得到返回response 5、解析response:浏览器解析respo
阅读全文
摘要:** 1. let const ** ** 2. symbol** ** 3. 解构赋值** 答:解构赋值语法是一种 Javascript 表达式。通过解构赋值,可以将属性/值从对象/数组中取出,赋值给其他变量 ** 4.模板字符串** 5. 箭头函数 答: 1,声明式函数不能使用箭头函数,只能赋值
阅读全文
摘要:1.let const var 的区别 答。1 var 有变量提升, let const没有 2 var 没有作用域,但是let const 有作用域 3 var let 声明时可以没有值,但是const声明时必须含有值 4 var 声明的变量会添加到全局的window对象上, let const
阅读全文
摘要:js对象的方法 答:1 Object.keys() 2 Object.values() 3 Object.hasOwnProperty() 4 Object.assign(target, ...sources) 5.Object.is() 判断俩个值是否相等 6 Object.create(prot
阅读全文
摘要:this指向 以及 call bind apply 答: 1.普通函数, this指向window 2.定时器, this指向window 3构造函数, this指向实例化的对象 4.对象方法的调用: this指向该方法所属的对象 5.事件绑定的方法: this指向事件源 ** 改变this指向的方
阅读全文
摘要:** js延迟加载的方式有哪些** 答: js延时加载的优点:当页面加载完成后,在解析js文件,这样有利于页面的加载的速度 1. 采用定时器 2.把js文件放在最后 3.动态创建script标签,当页面的全部内容加载完毕后,在执行创建挂载 4.script标签设置defer属性,异步加载js文件,延
阅读全文
摘要:** js的设计模式** 答:单例模式(vue) 订阅发布模式(事件总线EventBus) 工厂模式(有构造函数的地方、写了大量构造函数、调用了大量的 new的情况下) 代理模式(Proxy) 参考文献:https://zhuanlan.zhihu.com/p/465206177
阅读全文
摘要:** 谈谈js的运行机制(js单线程及js事件循环机制)** 答:js是单线程的,需要前一个任务结束,才能去执行下一个任务,这样js执行时间过长,就会导致页面渲染卡顿现象。在H5新标准中提出可以创建多个进程,这样就出现了同步任务和异步任务。 ** 同步任务和异步任务(微任务和宏任务)的执行机制**
阅读全文
摘要:** 数据类型** 答:基本数据类型: null undefind number string boolean bigint Symbol(ES6 引入的一种新的原始数据类型Symbol,表示独一无二的值。) 引用数据类型: object Symbol: 由于每一个 Symbol 值都是不相等的,这
阅读全文
摘要:1.每一个函数都有一个显示原型prototype 2.每一个实例对象都有一个隐示原型--proto-- 实例对象的隐示原型等于构造函数的显示原型 3 原型链(隐示原型链) 答: 当你访问实例对象的属性时,会先从本身去找,没有则去原型上去找,还没有则去原型对象的--proto--去找,找到最上面--p
阅读全文
摘要:1.这个函数中包含多个对象,尽管这个函数是被最外层的对象所调用,this指向的也只是它上一级的对象 let obj = { a: 10, b: { a: 20, fn: function () { console.log(this); //this指上一级的调用,this指向b console.lo
阅读全文