前端八股文
文章平均质量分 65
NumbSilver
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
深拷贝的多种方法
function deepCloneEasy(target){ if(target!==null &&typeof target==="object"){ return JSON.parse(JSON.stringify(target)) }else{ return target } } // 这个方法虽然简单但是会丢失方法 且循环调用会出问题 function deepCloneHard(target,map=new Map()){原创 2021-06-14 11:16:56 · 338 阅读 · 0 评论 -
meta标签
meta标签 一、meta标签的定义 meta标签是head部的一个辅助性标签,提供关于 HTML 文档的元数据。它并不会显示在页面上,但对于机器是可读的。可用于浏览器(如何显示内容或重新加载页面),搜索引擎(SEO),或其他 web 服务。 二、meta标签的作用 meta标签里的数据是供机器解读的,其主要作用有:搜索引擎优化(SEO),定义页面使用语言,自动刷新并指向新的页面,实现网页转换时的动态效果,控制页面缓冲,网页定级评价,控制网页显示的窗口等等。 三、meta标签的可选属性 在W3school中原创 2021-06-13 18:45:05 · 2804 阅读 · 0 评论 -
Redux
Redux 什么情况下使用redux 某个组件的状态,需要共享 某个状态需要在任何地方都可以拿到 一个组件需要改变全局状态 一个组件需要改变另一个组件的状态 工作流程 容器组件(用户)发出Action。 容器组件:容器组件中要引入action,就是要引入需要操作的动作 action_creators:(做什么,然后将需要做的事分发给STORE) Action Creators 把动作分发给Store Store:负责中转,redux的主要组件 Store 自动调用 Reducer,并且传入两个参数:原创 2021-06-01 22:27:02 · 275 阅读 · 0 评论 -
React三大属性和通信(组件间&组件内)
组件的三大属性 state 1. 组件被称为"状态机", 页面的显示是根据组件的state属性的数据来显示 2. 初始化指定: constructor() { super() this.state = { stateName1 : stateValue1, stateName2 : stateValue2 } } 3. 读取显示: this.state.stateName1 4. 更新状态-->更新界面 :原创 2021-05-30 21:53:29 · 329 阅读 · 1 评论 -
React Hook
React Hook Hook 是一些可以让你在函数组件里 “ 钩入” React state 及生命周期等特性的函数。Hook 不能在 class 组件中使用 —— 这使得你不使用 class 也能使用 React。 hook出现的原因 避免地狱式嵌套,可读性提高。 函数式组件,比class更容易理解。 class组件生命周期太多太复杂,使函数组件存在状态。 解决HOC和Render Props的缺点。 UI 和 逻辑更容易分离。 hook使用规则 只能在函数最外层调用 Hook。不要在循环、条件判原创 2021-05-27 11:31:49 · 417 阅读 · 0 评论 -
跨域问题(没写完)
跨域问题 同源策略&跨域 同源策略:浏览器的一种安全策略。 同源:协议(http/https)域名 端口号 必须完全相同。 违背同源策略就是跨域 跨域:跨域的安全限制都是对浏览器端来说的,服务器端是不存在跨域安全限制的。浏览器的同源策略限制从一个源加载的文档或脚本与来自另一个源的资源进行交互。 非同源收到那些限制: cookie不能获取 DOM无法获取 Ajax请求不能获取数据 jsonp解决跨域(只支持get请求) jsonp的原理: 利用就是利用script标签没有跨域限制,可以通过s原创 2021-05-25 17:20:12 · 173 阅读 · 0 评论 -
Cookie、session和localStorage、以及sessionStorage
cookie和session的区别 HTTP是一个无状态协议,因此cookie最大的作用就是存储sessionID用来唯一标识用户 实现机制:Session的实现常常依赖于Cookie机制,通过Cookie机制回传SessionID; 大小限制:Cookie有大小限制并且浏览器对每个站点也有cookie的个数限制,Session没有大小限制,理论上只与服务器的内存大小有关; 安全性:Cookie存在安全隐患,通过拦截或本地文件找得到cookie后可以进行攻击,而Session由于保存在服务器端,相对更加安原创 2021-05-21 10:46:56 · 235 阅读 · 0 评论 -
HTTP&HTTPS工作原理
HTTP和HTTPS的区别 HTTP:超文本传输协议,是一个客户端与服务器端请求和应答的标准(TCP),可以使浏览器更高效,信息是明文传输,无状态 HTTPS:是以安全为目标的HTTP通道,在HTTP下加入SSL层 HTTPS需要CA证书,贵! HTTP协议端口:80 HTTPS端口:443 HTTPS协议的工作原理 建立一个信息安全通道,来确保数据的传说,确保网站的真实性 客户端C 使用https url 访问服务器S ,要求与服务器S 建立SSL链接。 服务器S 接收到客户端C请求之后,原创 2021-05-20 20:40:01 · 568 阅读 · 0 评论 -
手写Promise
手写Promise 面试中经常涉及的一个问题,下面一步一步完成一下。 其中重点是写一个 Promise.all 手写一个promise类 在写之前我们先确定一下promise本身封装的一些方法 promise的常用方法 构造函数:excutor执行器函数 resolve函数 reject函数 执行器函数Promise内部立即同步回调,这个部分在promise执行顺序的题中经常遇到 promise.prototype.then 成功&失败的回调 onResolved函数 onRejected函数 p原创 2021-05-20 16:07:21 · 1222 阅读 · 0 评论 -
ES6新语法——Class类
ES6新语法——Class类: ES6提供了更接近面向对象(注意:javascript本质上是基于对象的语言)语言的写法,引入了Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。 类中有构造方法:constructor方法,通过new命令生成实例时,会自动调用该方法,如果没有显示定义,会默认添加一个空得constructor。constructor方法默认返回实例对象(即this),但也可以指定返回另外一个对象。 类的方法:不需要function关键字 可以使用类名.protot原创 2021-05-20 13:16:12 · 250 阅读 · 0 评论 -
call,bind,apply的区别
call,bind,apply的区别 简单来说: 三个方法的主要作用都是改变this指向。 call和apply都是,改变指向之后,立即执行。 但是bind仅仅改变this指向,不调用函数 call 和 bind直接将第二个参数及其以后的参数作为参数传入函数体内。 但是apply需要将所有参数放入一个数组内。 但是其实这并不准备 call和bind的区别: 它和 call 很相似,接受的参数有两部分,第一个参数是是作为函数上下文的对象,第二部分参数是个列表,可以接受多个参数。 它们之间的区别有以下两点。原创 2021-05-20 11:27:04 · 957 阅读 · 0 评论 -
JS new一个对象的过程
new一个构造函数的流程 得到了实例继承了构造器的构造属性 主要有3步: 创建一个空对象,将它的引用赋给 this,继承函数的原型。 通过 this 将属性和方法添加至这个对象 最后返回 this 指向的新对象,也就是实例(如果没有手动返回其他的对象) 但是: 它只描述了构造器属性是如何塞给实例,没说原型上的属性是如何给实例继承的。 改写: 以构造器的prototype属性为原型,创建新对象; 将this(也就是上一句中的新对象)和调用参数传给构造器,执行; 如果构造器没有手动返回对象,则返回第一步创原创 2021-05-19 14:36:23 · 292 阅读 · 0 评论 -
JS继承
JS完成继承的六种方法: 和其他功能一样,ECMAScript 实现继承的方式不止一种。这是因为 JavaScript 中的继承机制并不是明确规定的,而是通过模仿实现的。这意味着所有的继承细节并非完全由解释程序处理。作为开发者,你有权决定最适用的继承方式。 首先我们定义一个父类: // 定义一个动物类 function Animal (name) { // 属性 this.name = name || 'Animal'; // 实例方法 this.sleep = function(){原创 2021-05-19 14:04:26 · 869 阅读 · 0 评论 -
前端八股文
前端八股文 随着准备面试汇总一些我觉得重要的面试考点。这个是目录,随着复习随着更新 文章目录前端八股文JS基础前后端通讯安全工程化REACTVUETypeScript JS基础 原型对象和原型链. 作用域、作用域链和执行上下文. 数据类型 var、const、let 对比 es next 最新规范 new 的过程 this 指向问题 bind 实现方式 闭包 事件循环 【超高频】 类型判断 手写 Promise 异步&同步 ES6新语法 前后端通讯 输入 URL 到页面展示 【超高频】 跨原创 2021-05-16 15:04:38 · 14671 阅读 · 6 评论
分享