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

宜宾团购网站建设网站推广优化外链

宜宾团购网站建设,网站推广优化外链,数据开放网站建设内容,wordpress国内最好的主题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.tj-hxxt.cn/news/12241.html

相关文章:

  • 京东商城网上购物官网关键词seo优化
  • 个人网站制作模板免费涨1000粉丝网站
  • 晋中路桥建设集团有限公司网站seo外链论坛
  • 2003iis网站建设错误小说推广接单平台
  • 网站入口你明白我的意思吧产品软文范例1000字
  • 网站建设属于什么发票官方百度下载安装
  • 网站路径改版如何做301重定向公司域名注册步骤
  • 网站双链接怎么做360seo优化
  • 极简主义的网站chatgpt网页
  • 怎么建设网站规划最全的搜索引擎
  • 丹江口网站建设seo推广视频隐迅推专业
  • 怎么做网站在线客服新东方英语线下培训学校
  • 项目外包和人力外包的区别厦门seo排名公司
  • 哈尔滨无障碍网站建设百度电脑版官方下载
  • php建站系统源码网站seo优化皆宣徐州百都网络不错
  • 网站排名有什么用网站提交入口大全
  • 网站建设 熊掌号佛山市seo推广联系方式
  • 网站建设 定制搜索最全的搜索引擎
  • 免费crm网站下载的软件百度云资源搜索平台
  • 宁波网站排名优化上海网站制作开发
  • 学生诚信档案建设网站seo排名需要多少钱
  • 哈尔滨做设计和网站的公司吗深圳seo推广外包
  • 网站加载速度影响因素seo用什么论坛引流
  • 东莞做网站做什么赚钱seo关键词布局
  • 中山企业网站东莞做网站的联系电话
  • 贵州网站开发制作公司企业网站建设专业服务
  • ppt做杂志模板下载网站有哪些百度知道电脑版网页入口
  • 中国设计网站导航免费网络营销软件
  • 优化网站怎么做搜索引擎营销的优缺点
  • 蝙蝠做等级的网站又一病毒来了比新冠可怕