- 博客(160)
- 收藏
- 关注
原创 Flutter知识点总结(一)
Flutter知识点总结文章目录Flutter知识点总结前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):im
2021-09-10 22:41:34
268
原创 CSS知识点总结(八)
CSS知识点总结文章目录CSS知识点总结一、利用CSS filter实现一个hover凸显当前元素,模糊其他元素的效果一、利用CSS filter实现一个hover凸显当前元素,模糊其他元素的效果html:<div class="boxes"> <div class="filter">看到见吗</div> <div class="filter">看到见吗</div> <div class="filter">
2021-09-01 16:02:48
220
原创 JS知识点总结(十)
JS知识点总结文章目录JS知识点总结一、怎么获取对象的Symbol属性?1.Object.keys可以吗?2.for...in...?3.Object.getOwnPropertyNames?4.Object.getOwnPropertySymbols一、怎么获取对象的Symbol属性?const numSymbol = Symbol(1);const hasSymbolObj = { [numSymbol]: 1, 2: 2};1.Object.keys可以吗?我们使用Ob
2021-08-31 22:44:37
208
原创 JS知识点总结(九)
JS知识点总结文章目录JS知识点总结一、如何监听数组的改变?一、如何监听数组的改变?利用Proxy可以来监听数组的length属性,当push或者pop的时候,会触发setter:const proxyArr = new Proxy(unkownArr, { set(target, prop, value, receiver) { if (prop === 'length') { console.log('set new value', value);
2021-08-25 16:59:52
215
原创 前端面试题总结(五)
前端面试题总结文章目录前端面试题总结一、0.5的二进制是多少?1.整数转二进制2.小数转二进制一、0.5的二进制是多少?刚开始看到这个问题是懵逼的,但是仔细思考二进制的编码方式,会发现:8,4,2,1(这是之前学的8421码,这里只包含到了1。那再往下写呢:8,4,2,1,0.5,0.25,0.125)如0.625就可以写成 0.101B。那具体怎么计算呢?参考整数的十进制转二进制是不断除以2,取余数,从高位写到低位。那么小数则是不断乘以2,取整,从下往上写便得到小数的二进制。1.整数转二进
2021-08-25 16:04:58
447
原创 CSS知识点总结(七)
CSS知识点总结文章目录CSS知识点总结一、多行文字如何垂直居中?1.使用table布局2.利用line-height和inline-block3.使用inline-block,relative,transform4.使用flex一、多行文字如何垂直居中?1.使用table布局.table { display: table; width: 200px; height: 200px; border: 1px solid #000; text-align: cen
2021-08-22 16:16:51
70
原创 JS知识点总结(八)
JS知识点总结文章目录JS知识点总结一、怎么可以设置对象的属性不可修改?1、使用Object.defineProperty2、使用代理(Proxy)3、若使用TS一、怎么可以设置对象的属性不可修改?1、使用Object.defineProperty[[Configurable]]:表示属性是否可以通过 delete 删除并重新定义,是否可以修改它的特性,以及是否可以把它改为访问器属性。默认情况下,所有直接定义在对象上的属性的这个特性都是 true。[[Enumerable]]:表示属性是否可以通
2021-08-19 20:18:44
129
原创 webpack热更新原理
webpack热更新原理文章目录webpack热更新原理一、什么是热更新?二、webpack热更新基本原理1.修改webpack.config.js的entry配置2.启动本地服务3.监听文件发生变化4.监听webpack编译完成5.浏览器收到检查更新通知6.HotModuleReplacementPlugin进行更新一、什么是热更新?热更新(Hot Module Replacement,简称HMR)是指在无需刷新整个页面,只更新页面的局部完成更新。HMR是webpack的内置功能,可以通过HotMo
2021-08-11 20:53:54
964
原创 不同页面之间的通信方式
不同页面之间的通信方式文章目录不同页面之间的通信方式前言一、同源1.使用BroadCast Channel2.Service Worker3.监听localStorage二、非同源前言当需要在一个浏览器中的不同页面(tabs,iframes)进行通信时,我们可以使用如下方法。首先根据同源与否,分为同源和非同源。一、同源1.使用BroadCast ChannelBroadCast Channel可以为我们创建一个公共的广播频段,当不同的页面都监听他时,就可以收到其他页面发出的消息。使用方法:c
2021-08-11 16:54:24
882
原创 JS知识点总结(七)
JS知识点总结文章目录JS知识点总结一、关于变量提升与临时性死区一、关于变量提升与临时性死区直接上题下面的代码中会打印出多少?var a = 1;function fn() { console.log(a); if (false) { var a = 2; }}fn();这里考察了JS的变量提升,但很多情况大家都想到了全局和函数作用域中的变量提升,却没有注意到判断语句中的变量提升(因为使用的var关键字没有块级作用域)。变量提升后的代码为:va
2021-08-11 10:45:17
88
原创 CSS九宫格
CSS九宫格文章目录CSS九宫格一、方法一方法二Grid布局一、方法一使用flex-wrap,每个item宽度高度相等<ul class="container"> <li class="item">1</li> <li class="item">2</li> <li class="item">3</li> <li class="item">4</li>
2021-08-11 09:55:52
310
原创 Babel知识点总结
Babel知识点总结文章目录Babel知识点总结前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import
2021-08-08 16:54:42
263
原创 计算机网络知识总结(六)
计算机网络知识总结文章目录计算机网络知识总结一、TCP流量控制一、TCP流量控制TCP用滑动窗口做流量控制,TCP头里有一个字段叫Advised Window,用来通知发送方自己还有多少缓存区可以用来接收数据。而发送方根据接收方的处理能力来处理数据,避免发送数据过多,接收方处理不过来。计算方法:接收方在Ack中记录自己的AdvertisedWindow = MaxRcvBuffer – (LastByteRcvd - LastByteRead),随Ack回复到发送方。发送方根据Ack中的Ad
2021-08-07 20:46:09
86
原创 实现LazyMan
实现一个可链式调用并可sleep的LazyManclass LazyMan { constructor(name) { // 保存要执行的任务 this.tasks = []; // 初始化中先push一个task const task = () => { console.log(`hi this is ${name}`); // 执行下一个task thi
2021-07-31 22:51:21
133
1
原创 JS知识点总结(八)
JS知识点总结文章目录JS知识点总结一、关于变量声明与逗号操作符js环境下ts环境下一、关于变量声明与逗号操作符若使用逗号操作符,在最后一个变量的位置进行赋值,只会给最后一个变量赋上值,其余变量为undefined。let p1, p2, p3 = 1;console.log(p1); // undefinedconsole.log(p2); // undefinedconsole.log(p3); // 1若使用=连接三个变量,在js环境下没问题,但是在ts环境下回报错!js环境下但
2021-07-31 17:41:30
72
原创 关于JS引擎编译(转)
JS引擎编译基本过程文章目录JS引擎编译基本过程一、编译过程(以V8引擎为例)一、编译过程(以V8引擎为例)parse,将js代码解析成抽象语法树(AST)(词法分析,语法分析)Ignition:解释器,负责将AST转换成字节码TurboFan:JIT编译器,利用Ignitio所收集的类型信息,将Bytecode转换为优化(如重复执行的代码不会在运行时重复进行解释)的机器码参考博文:[1]: https://juejin.cn/post/6844903953981767688[2]:
2021-07-30 22:27:18
161
原创 CDN知识总结
CDN(Content Delivery Network)知识总结文章目录CDN(Content Delivery Network)知识总结一、什么是CDN?二、请求CDN的过程回源一、什么是CDN?CDN是用来做网络加速的,通过在网络各处放置节点服务器,这些节点服务器用来存放资源(如图片,音频等)。用户访问相关资源时只需要访问离用户最近的节点而不需要访问根服务器,从而加快网络响应。二、请求CDN的过程用户通过URL访问某个资源,DNS域名解析服务器会进行域名解析,向网站的DNS解析服务器发请
2021-07-30 17:43:23
192
原创 webpack知识点总结
webpack知识点总结文章目录webpack知识点总结一、什么是loader二、常见的loader三、什么是plugin四、常见的plugin五、webpack构建流程六、webpack优化1.缩小文件搜索范围2.tree shaking3.优化代码压缩时间一、什么是loaderloader的本质是一个函数,该函数对接收到的内容进行转换,返回转换后的结果。因为webpack只认识js文件,所以使用loader对其他类型的文件进行预处理,然后进行打包。二、常见的loaderfile-loader
2021-07-27 21:49:24
137
原创 Tree Shaking
Tree Shaking文章目录Tree Shaking前言一、什么是Tree Shaking?二、Tree Shaking的过程前言这里的Tree Shaking指的是基于WebPack的。一、什么是Tree Shaking?Tree Shaking是基于ES6 module的技术,通过Tree Shaking可以将工程中不会执行的代码和引入后没有用到的部分模块进行删除。之所以说Tree Shaking是基于ES6 module,是因为ES6模块依赖关系是确定的,和运行时的状态无关,可以进行可
2021-07-27 17:18:06
119
原创 前端面试题(五)
前端面试题文章目录前端面试题一、计算数组最大深度一、计算数组最大深度function countDeep(arr) { const n = arr.length; // 递归出口 if (n < 1) return 0; let max = 1; for (let i = 0; i < n; i++) { let count = 1; if (Array.isArray(arr[i])) {
2021-07-26 15:48:20
52
原创 关于浏览器渲染进程和Event Loop
关于浏览器渲染进程和Event Loop文章目录关于浏览器渲染进程和Event Loop一、浏览器渲染进程都有哪些线程?二、事件循环1.宏任务2.微任务一、浏览器渲染进程都有哪些线程?在浏览器中,每一个tab页就是一个渲染进程,这个渲染进程中包含以下五个线程:JS引擎线程(主线程,执行JS代码)GUI渲染线程(解析HTML,CSS,构建DOM树和RenderObject树,布局和绘制等)事件触发线程(控制事件循环,当事件被触发,将异步任务或者某些触发事件如:click等放入事件队列中,等待JS
2021-07-25 14:31:50
202
原创 HTML知识点总结(一)
HTML知识点总结文章目录HTML知识点总结一、DOM节点类型二、DOCTYPE的作用一、DOM节点类型Node类型,这个是所有DOM节点都实现的接口Document类型,文档节点,代表整个HTML页面),document暴露出了三个接口:document.documentElement, document.body, document.doctypeElement类型,代表HTML元素Text类型,文本节点Comment类型,注释节点DocumentType类型,包含文档的文档类型(do
2021-07-23 22:05:05
62
原创 计算机网络知识总结(五)
计算机网络知识总结文章目录计算机网络知识总结一、URI和URL的关系一、URI和URL的关系URI(统一资源标志符),是用于标识某个互联网资源名称的字符串。这个字符串可以唯一标识出该网络资源,好比人的身份证号。URL(统一资源定位符),是我们通常说的网络地址,好比通过居住地址的方式标识出一个人,可以理解为URL是URI的一种实现。...
2021-07-20 17:40:18
147
1
原创 React知识点总结(七)
React知识点总结(Fiber&Diff)文章目录React知识点总结(Fiber&Diff)一、Fiber模型是什么1.代数效应2.代数效应在React中的体现3.React Fiber4.Fiber的起源Fiber的结构(一)作为架构(二)作为静态的数据结构(三)作为动态的更新单元二、Fiber树是如何构建/更新的1.“递”与“归”“递”“归”2.beginWork方法都做了什么?3.completeWork做了什么?三、Diff算法一、Fiber模型是什么1.代数效应代数效
2021-07-19 15:55:29
585
原创 JS知识点总结(五)
JS知识点总结文章目录JS知识点总结一、功能强大的toLocaleString()一、功能强大的toLocaleString()Number.prototype.toLocaleStringstyle 表示格式化时使用的样式,默认值是 decimal 也就是纯数字,也可为 percent 百分比显示与 currency 货币显示。值为 currency 时必须同时指定 options 中的 currency 属性,否则报错。具体例子如下:const num = 2333333;num.toL
2021-07-13 20:12:31
188
原创 观察者模式的简单实现(TS)
观察者模式前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.py
2021-06-25 17:06:54
326
原创 React知识点总结(六)
React知识点总结文章目录React知识点总结前言React.lazy的基本原理React.lazy的使用方法React.Suspense大概原理React.lazy的基本原理前言今天学习一下React懒加载的基本原理,React懒加载采用React.lazy和React.Suspense。React.lazy的基本原理React.lazy的使用方法import React, { Suspense } from 'react';const OtherComponent = React.la
2021-06-24 17:45:49
146
原创 关于前端自动化测试
系列文章目录文章目录系列文章目录前言一、前端自动化测试基础前言收集一些关于前端自动化测试的文章。。后续有时间再做实践一、前端自动化测试基础传送门
2021-06-24 15:04:34
41
原创 CSS知识点总结(六)
CSS知识点总结文章目录CSS知识点总结一、子元素的margin值对父元素的影响一、子元素的margin值对父元素的影响若父元素宽100px,子元素宽20px,左右margin分别为60px和50px,此时,子元素在什么位置。第一直觉我们会认为子元素会影响到外面的父元素,而事实上子元素的右margin并没有起到作用:.margin-box { box-sizing: content-box; width: 100px; height: 100px; backgrou
2021-06-23 15:49:46
61
原创 计网知识点总结(一)
计网知识点总结文章目录计网知识点总结一、GET请求中参数传递问题一、GET请求中参数传递问题在项目发现,在GET请求中包含对象参数,若不使用JSON.stringify(prop)进行转换,上传的参数就会出现下图的情况。使用后JSON.stringify(prop)后可以以对象字符串的形式传给后端。但是,在POST请求中不存在这个问题~...
2021-06-22 15:37:22
229
原创 Antd知识点总结(二)
Antd知识点总结文章目录Antd知识点总结一、关于封装Form表单控件元素一、关于封装Form表单控件元素有时候Antd原生提供的表单组件如:Input, Button, Checkbox不能满足业务需要,需进行进一步的封装。import React, { useState, useEffect, Children } from "react";import ReactDOM from "react-dom";import "antd/dist/antd.css";import "./ind
2021-06-20 20:22:10
289
原创 React知识点总结(五)
React知识点总结文章目录React知识点总结一、useEffect和useMemo的执行时机基相关问题一、useEffect和useMemo的执行时机基相关问题useEffectuseEffect钩子函数是在组件重新渲染后,官网将这个阶段称之为commit阶段,这个阶段分为:DOM修改前,修改DOM和DOM修改后三个阶段。useEffect是在DOM修改前将回掉函数保存在组件对应的fiber对象中,然后在DOM修改后(其实还要等一段时间后)执行。执行useEffect本身不会造成重新渲染,在
2021-05-26 11:39:54
262
原创 Antd知识点总结(一)
Antd知识点总结文章目录Antd知识点总结一、Form表单获取值的问题一、Form表单获取值的问题在Form表单中,使用Form.Item包裹内容组件,当设置setFieldsValue或者getFieldsValue时都作用的是Form.Item包裹的直接子元素,并不是里面所有的子元素。因此,当使用一个组件包裹内容组件时,会出现获取不到值或者设置失败的情况出现。...
2021-05-17 14:49:32
1150
原创 mobx使用总结(一)
mobx使用总结文章目录mobx使用总结一、在mobx监控的组件中,异步情况一、在mobx监控的组件中,异步情况Any steps after await aren't in the same tick, so they require action wrapping. Here, we can leverage runInAction:import { runInAction, makeAutoObservable } from "mobx"class Store { githubP
2021-05-11 21:05:05
148
原创 TS知识点总结(一)
TS知识点总结文章目录TS知识点总结一、ts中可选类型没有相关属性的问题一、ts中可选类型没有相关属性的问题在项目中,有时候会遇到后端下发可选属性如:在使用该类型的实例时如:当 arr可能为undefined时,不能参与比较arr?.length > 0 // 会报错if (arr?.length) // 不会报错...
2021-05-11 19:10:24
836
原创 dayJS使用总结(一)
dayJS使用总结(一)文章目录dayJS使用总结(一)前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):im
2021-05-10 17:51:05
852
原创 CSS知识点总结(五)
层叠上下文文章目录层叠上下文一、什么是层叠上下文二、形成层叠上下文的方法三、z-index四、层叠顺序一、什么是层叠上下文每个DOM元素在渲染在浏览器中都有一个位置信息,x轴,y轴和z轴坐标,层叠上下文就是元素在某个层级上z轴的排列关系。与BFC类似,层叠上下文之间不会互相影响。每个元素的层叠水平只有在同一个层叠上下文中才有比较的意义。不同层叠上下文中的元素的层叠等级会受父层叠上下文层叠水平的影响。二、形成层叠上下文的方法html元素position值为 absolute|relative
2021-05-07 10:37:11
68
原创 Git知识点总结(一)
Git知识点总结文章目录Git知识点总结一、git stash的用处二、利用git checkout 把当前某个文件的改动合并进去另一个分支一、git stash的用处当在某个分支写了一部分代码后需要切换到另一个分支去做一个修改,但是此时你并不想 add 和 commit,此时就可以使用 git stash把当前改动暂存起来,然后修改完了之后再回到当前分支,使用git stash pop取出改动。还可以利用暂存的功能,把当前改动放到其他分支上去。二、利用git checkout 把当前某个文件的改
2021-04-30 15:19:45
168
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人