当前位置: 首页 > news >正文

关键词排名手机优化软件苏州seo优化

关键词排名手机优化软件,苏州seo优化,做百度企业网站有什么好处,做电影网站用什么软件1.js 延迟加载的方式有哪些? 2.js同步和异步的区别? 3.什么是浏览器的同源政策? 4.介绍一下 js 的节流与防抖? 5.js 中的深浅拷贝实现? 6.Js 动画与 CSS 动画区别及相应实现 7.观察者模式和发布订阅模式有什么不同…

 1.js 延迟加载的方式有哪些?

 2.js同步和异步的区别?

3.什么是浏览器的同源政策?

4.介绍一下 js 的节流与防抖?

5.js 中的深浅拷贝实现?

6.Js 动画与 CSS 动画区别及相应实现

7.观察者模式和发布订阅模式有什么不同?

8.js 中的命名规则

9.JavaScript怎么清空数组?

10.微任务和宏任务


1.js 延迟加载的方式有哪些?

一般有以下几种方式:

  • defer 属性
  • async 属性
  • 动态创建 DOM 方式
  • 使用 setTimeout 延迟方法
  • 让 JS 最后加载
 2.js同步和异步的区别?

同步,可以理解为在执行完一个函数或方法之后,一直等待系统返回值或消息,这时程序是处于阻塞的,只有接收到返回的值或消息后才往下执行其他的命令。  

异步,执行完函数或方法后,不必阻塞性地等待返回值或消息,只需要向系统委托一个异步过程,那么当系统接收到返回值或消息时,系统会自动触发委托的异步过程,从而完成一个完整的流程。 

3.什么是浏览器的同源政策?

我对浏览器的同源政策的理解是,一个域下的 js 脚本在未经允许的情况下,不能够访问另一个域的内容。这里的同源的指的是两个
域的协议、域名、端口号必须相同,否则则不属于同一个域。

同源政策主要限制了三个方面

第一个是当前域下的 js 脚本不能够访问其他域下的 cookie、localStorage 和 indexDB。

第二个是当前域下的 js 脚本不能够操作访问操作其他域下的 DOM。

第三个是当前域下 ajax 无法发送跨域请求。

同源政策的目的主要是为了保证用户的信息安全,它只是对 js 脚本的一种限制,并不是对浏览器的限制,对于一般的 img、或者
script 脚本请求都不会有跨域的限制,这是因为这些操作都不会通过响应结果来进行可能出现安全问题的操作。

4.介绍一下 js 的节流与防抖?

函数防抖: 在事件被触发 n 秒后再执行回调,如果在这 n 秒内事件又被触发,则重新计时。

函数节流: 规定一个单位时间,在这个单位时间内,只能有一次触发事件的回调函数执行,如果在同一个单位时间内某事件被触发多次,只有一次能生效。

5.js 中的深浅拷贝实现?

浅拷贝指的是将一个对象的属性值复制到另一个对象,如果有的属性的值为引用类型的话,那么会将这个引用的地址复制给对象,因此两个对象会有同一个引用类型的引用。浅拷贝可以使用  Object.assign 和展开运算符来实现。

深拷贝相对浅拷贝而言,如果遇到属性值为引用类型的时候,它新建一个引用类型并将对应的值复制给它,因此对象获得的一个新的引用类型而不是一个原有类型的引用。深拷贝对于一些对象可以使用 JSON 的两个函数来实现,但是由于 JSON 的对象格式比 js 的对象格式更加严格,所以如果属性值里边出现函数或者 Symbol 类型的值时,会转换失败。

6.Js 动画与 CSS 动画区别及相应实现

 CSS3 的动画的优点

在性能上会稍微好一些,浏览器会对 CSS3 的动画做一些优化
代码相对简单

缺点

在动画控制上不够灵活
兼容性不好

JavaScript 的动画正好弥补了这两个缺点,控制能力很强,可以单帧的控制、变换,同时写得好完全可以兼容 IE6,并且功能强大。对于一些复杂控制的动画,使用 javascript 会比较靠谱。而在实现一些小的交互动效的时候,就多考虑考虑 CSS 吧

7.观察者模式和发布订阅模式有什么不同?

发布订阅模式其实属于广义上的观察者模式

在观察者模式中,观察者需要直接订阅目标事件。在目标发出内容改变的事件后,直接接收事件并作出响应。

而在发布订阅模式中,发布者和订阅者之间多了一个调度中心。调度中心一方面从发布者接收事件,另一方面向订阅者发布事件,订阅者需要在调度中心中订阅事件。通过调度中心实现了发布者和订阅者关系的解耦。使用发布订阅者模式更利于我们代码的可维护性。

8.js 中的命名规则

(1)第一个字符必须是字母、下划线(_)或美元符号($)
(2)余下的字符可以是下划线、美元符号或任何字母或数字字符

一般我们推荐使用驼峰法来对变量名进行命名,因为这样可以与 ECMAScript 内置的函数和对象命名格式保持一致。

9.JavaScript怎么清空数组?

方法1

arrayList = [];

直接改变arrayList所指向的对象,原对象并不改变。

方法2

arrayList.length = 0;

这种方法通过设置length=0 使原数组清除元素。

方法3

arrayList.splice(0, arrayList.length);

10.微任务和宏任务

事件循环是一个宏观的表述,其实异步任务之间并不完全相同,其执行时机有所区别。细分来说的话异步任务分为两种:microtask 与 macrotask

宏任务macrotask 主要有:script(整体代码)、setTimeout、setInterval、I/O、UI交互事件、postMessage、MessageChannel、setImmediate(Node.js 环境)

微任务microtask 主要有:process.nextTick,Promises【new Promise().then(回调)】,MutationObserver(html5 新特性)

http://www.yayakq.cn/news/719040/

相关文章:

  • 自己做视频的网站企业网站如何设置关键词
  • 网站域名选择网站设置在设备之间共享什么意思
  • wordpress全站同一个标题上海网站建设__永灿品牌建站
  • 企业网站酷站中国风网页设计欣赏
  • 中山建公司网站建设公司网站要注意哪些
  • 东营网站建设培训淮安软件园网站建设
  • 用php做购物网站视频企业网站制作多少钱
  • 怎样自己做网站卖钱模板设计图
  • 东营网站设计公司网站建优化
  • 泰州网站开发公司高端摄影网站模板
  • 怎么查看网站ftp地址资讯网站 怎样 增强用户粘度
  • 武功做网站网站建设合同审批
  • 深圳模板建站平台海北wap网站建设
  • 网站建设相关行业有哪些微网站建设 合同
  • 东莞 网站建设企业深圳航空有限公司官网
  • ssh网站开发大型h5手游平台
  • 做ps的素材哪个网站百度竞价排名正确解释
  • ui网站界面设计模板网站换关键词
  • 发布网站建设信息自己做的网站可以百度推广吗
  • 天津 网站设计公司wordpress也没修改
  • 贵州省建设厅考试网站东庄水利建设公司网站
  • 颜色搭配对网站重要性如何选网站空间
  • 3合1网站建设白城百度网站建设
  • 建设网站需要什么条件做网站应该会什么问题
  • 中国免费网站服务器主机域名信用信息查询公示系统
  • 网站建设公司生存百度首页关键词优化
  • 网站排名优化快速黄岐建网站
  • 站酷的网址站长统计幸福宝网站统计
  • 徐州自助建站系统个人网页制作成品免费开源代码
  • 网站备案的幕布尺寸wordpress 4.5下载