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

网站建设类公司白酒企业网站建设

网站建设类公司,白酒企业网站建设,网站设计一般多长时间,开发公司运营部职责目录 面试官#xff1a;请你简述 var、let、const 三者之间的区别#xff1f; 面试官#xff1a;请你谈谈对深拷贝与浅拷贝的理解 面试官#xff1a;输入URL的那一瞬间浏览器做了什么#xff1f; 面试官#xff1a;说一说cookie sessionStorage localStorage 区别请你简述 var、let、const 三者之间的区别 面试官请你谈谈对深拷贝与浅拷贝的理解 面试官输入URL的那一瞬间浏览器做了什么 面试官说一说cookie sessionStorage localStorage 区别 面试官说一说JS数据类型有哪些,区别是什么 面试官说一说你对闭包的理解 面试官说一说JavaScript有几种方法判断变量的类型 面试官说一说null 和 undefined 的区别如何让一个属性变为null 面试官说一下有什么方法可以保持前后端实时通信 面试官说一说伪数组和数组的区别 每天10道题100天后搞定所有前端面试的高频知识点加油在看文章的同时希望不要直接看答案先思考一下自己会不会如果会自己的答案是什么想过之后再与答案比对是不是会更好一点当然如果你有比我更好的答案欢迎评论区留言一起探讨技术之美。 面试官请你简述 var、let、const 三者之间的区别 我呃~好的三者的作用区别总结如下 var最常用的变量允许重复声明但会导致数据被覆盖会产生变量提升局部变量挂载到全局对象上会造成全局对象的污染。 console.log(a) // 因变量提升, var a;提到前面但是没有赋值所以值为undefined var a 1 var a 你好 // var声明的变量会被重新赋值 console.log(a) // a会打印被重新赋值的值 console.log(window.a) // var声明的局部变量会被挂载到全局变量上造成全局变量的污染。 letes6新增命令用法类似var不允许重复声明不存在变量提升常作用于块级作用域而避免局部变量造成全局变量的污染。 let a10; console.log(a) // 不存在变量提升所以值为10 console.log(window.a) // 不会造成全局污染所以值为 undefined for(let i 0;i3;i){ // 会生成块级作用域i 的值只能在块级作用域中使用console.log(i) } console.log(i) // 因为拿不到块级作用域中的值所以报错。 constes6新增命令用于声明常量且值无法被修改声明常量必须立刻初始化否则后期赋值报错不能重复声明const指向变量的地址, 只要变量名所引用的地址不变就不会报错 const arr [小张,小王,小李,小赵] arr[0]小明 console.log(arr) // [小明, 小王, 小李, 小赵] const arr [] // 报错 面试官请你谈谈对深拷贝与浅拷贝的理解 我呃~好的对两者的理解总结如下 深拷贝新数据与原数据互不打扰。 // 扩展运算符在一维数组中是属于深拷贝在多维数组中属于浅拷贝 let arr [1,2,3] let newArr [...arr] newArr.push(4) console.log(arr,newArr) // [1, 2, 3],[1, 2, 3, 4]// 深拷贝用法 let list [{id:1,name:张三,age:18},{id:2,name:李四,age:28},{id:3,name:王五,age:38}, ] let newList JSON.parse(JSON.stringify(list)) newList.pop() console.log(list.length,newList.length) // 3 2 当然深拷贝也有一种标准写法如下 // 标准的深拷贝 引用数据类型(数组,对象) function deepClone(source){const targetObj source.constructor Array ? [] : {}for(let keys in source){if(source.hasOwnProperty(keys)){// 引用数据类型if(source[keys] typeof source[keys] object){targetObj[keys] source[keys].constructor Array ? [] : {}// 递归targetObj[keys] deepClone(source[keys])}else{// 基本数据类型,直接赋值targetObj[keys] source[keys]}}}return targetObj }let obj {name:张三,age:18,hobby:[抽烟,喝酒,烫头],action:{am:敲代码,pm:睡觉} } let newObj deepClone(obj) newObj.name 李四 console.log(obj.name,newObj.name)// 张三 李四 浅拷贝新数据会影响原数据。 let arr [1,2,3] let newArr arr // 对新数据做出改变原数据也会发生改变这种就叫做浅拷贝 newArr.push(4) // [1, 2, 3, 4] console.log(arr,newArr) // [1, 2, 3, 4] 说白了深拷贝是重新获得一个新的数据且和原来的数据没有任何关系浅拷贝虽然能得到一个新的数据但是和原来的数据仍有一定的联系。 面试官输入URL的那一瞬间浏览器做了什么 我呃~URL是由以下几部分组成 https: 传输协议http和tcp之间加了一层 TSL 或者 SSL 的安全层 www服务器 baidu.com域名 DNS域名系统会匹配真实的IP第一次访问正常第二次访问会将域名解析的IP存在本地用来读取浏览器缓存。 输入URL的那一刻经历了域名 - DNS域名系统 - 拿到真实IP - 建立连接(TCP的三次握手) - 拿数据渲染页面 - 四次挥手 具体实现过程 1. url解析判断是搜索内容还是请求URL 2. 查找本地缓存如果有缓存直接返回给页面没有缓存则进入网络请求阶段 3. DNS解析 4. 通过三次握手建立TCP连接 5. 合成请求头信息发送http请求 6. 处理响应信息 7. 通过四次挥手断开TCP连接 8. 如果响应状态码301则重定向 9. 浏览器进行页面渲染1解析html生成DOM树2根据css计算节点样式生成stylesheet3生成布局树4为特定的元素生成独立图层 面试官说一说cookie sessionStorage localStorage 区别 我呃~好的他们之间的关系如下 相同点 都是浏览器存储都存储在浏览器本地。 区别 1.cookie由服务器或前端写入 sessionStorage以及localStorage都是由前端写入 2.cookie的生命周期由服务器端写入时就设置好的localStorage是写入就一直存在除非手动清除sessionStorage是由页面关闭时自动清除 3.cookie存储空间大小约4kb sessionStorage及localStorage空间比较大大约5M 4.3者的数据共享都遵循同源原则sessionStorage还限制必须是同一个页面 5.前端给后端发送请求时自动携带cookie, session 及 local都不携带 6.cookie一般存储登录验证信息或者tokenlocalStorage常用于存储不易变动的数据减轻服务器压力sessionStorage可以用来监测用户是否是刷新进入页面如音乐播放器恢复进度条功能 面试官说一说JS数据类型有哪些,区别是什么 我呃~JS数据类型分为两类一类是基本数据类型另一类是引用数据类型如下 基本类型string、number、boolean、null、undefined、symbol、bigInt 引用类型 object、array 基本类型存储在栈中空间小操作频繁 引用类型存储在堆中空间大在栈中存储了指针指向在堆中的起始地址 注意Symbol具有唯一性 不可枚举 使用getOwnPropertySymbols获取 面试官说一说你对闭包的理解 我呃~内层函数引用外层函数中变量这些变量的集合就是闭包。 形成的原理作用域链当前作用域可以访问上级作用域中的变量。 解决的问题能够让函数作用域中的变量在函数执行结束之后不被销毁同时也能在函数外部可以访问函数内部的局部变量。 带来的问题由于垃圾回收器不会将闭包中变量销毁于是就造成了内存泄露内存泄露积累多了就容易导致内存溢出。 闭包的应用能够模仿块级作用域能够实现柯里化在构造函数中定义特权方法、Vue中数据响应式Observer中使用闭包等。 面试官说一说JavaScript有几种方法判断变量的类型 我呃~好的总结如下 1. typeof根据二进制判断不能判断数据类型null和object 2. intanceof(根据原型链判断)原生数据类型不能判断 3. constructor.name(根据构造器判断)不能判断null数据类型 4. Object.prototype.toString.call()用Object的toString方法判断所有类型数据都能判断,记住判断结果打印为[object Xxx] 面试官说一说null 和 undefined 的区别如何让一个属性变为null 我呃~null 是定义 并赋值null undefined是定义未赋值。 面试官说一下有什么方法可以保持前后端实时通信 我呃~轮询、长轮询、 iframe流、WebSocket、SSE。 面试官说一说伪数组和数组的区别 我呃~好的总结如下 伪数组的特点类型是object、不能使用数组方法、可以获取长度、可以使用for in遍历 伪数组可以转换为数组的方法Array.prototype.slice.call()、Array.from()、[...伪数组] 有哪些是伪数组函数的参数argumentsMap和Set的keys()、values()和entires()
http://www.dnsts.com.cn/news/209495.html

相关文章:

  • 铜山网站建设手机商城系统开发
  • 陕煤化建设集团网站重庆云诚度网站建设
  • 老k频道网站入口网站建设的经济可行性分析
  • 嘉兴门户网站郑州app下载
  • 将一个网站拉入黑名单怎么做下载 asp 网站源码
  • 专注WordPress网站建设开发网站建设商家
  • 百度账号个人中心seo服务方案
  • 电子政务门户网站建设的教训加强服务保障满足群众急需m
  • 自适应手机网站开发四川城乡和建设厅网站首页
  • 自媒体专用网站免费佛山seo整站优化承接
  • 山东网站推广怎么装字体到wordpress
  • 外贸公司网站怎么做网站双域名
  • 男直接做的视频网站站长交流平台
  • 网站建设网站制作提供服务wordpress调整配置文件
  • 长春建设集团招聘信息网站网站图片一般分辨率做多大
  • 平面设计和网站建设哪个好建设网站的准备工作分为
  • 网站建设简单合同简述电子商务网站开发的主要步骤
  • 做网站用什么数据库好用南康建设局官方网站
  • 苏州专业网站建设的公司海南在线直播
  • 贺卡制作网站网站信息化建设建议
  • 湘潭网站建设 要选磐石网络扁平化企业网站模板
  • 建立网站的三种方式个人简历范文100字
  • 代替手动修改网站模板标签兰州网站建设|兰州网站制作|兰州网站设计公司|兰州网络公司
  • 美食网站页面设计模板整合营销是什么
  • it外包企业排名seo排名优化软件
  • 网站做交叉连接销售外包
  • 网站建设 域名业务 邮箱阿里云服务器在哪里
  • 网站建设与设计大作业wordpress远程图片本地换
  • 网站开发国际化教育机构网站建设加盟
  • 建站之星如何建网站wordpress 5.0.1编辑器