前端
文章平均质量分 80
yydounai
八嘎雅鹿
展开
-
GraphQL-nestJS(类型与查询)
GraphQL 是一个用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)。GraphQL 并没有和任何特定数据库或者存储引擎绑定,而是依靠你现有的代码和数据支撑。...原创 2021-04-02 21:25:10 · 958 阅读 · 0 评论 -
前端一对一RTC实现入门
RTC这个概念最近越炒越火,而webRTC只是RTC实现的其中一环。webRTC名称源自网页即时通信(英语:Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。虽然webRTC标准在2011年就出现了,但是webRTC标准只定义了客户端的行为,服务端却并没有规范。这篇文章简单的聊一下webRTC的前端规范。首先要即时通信,需要获取视频或者音频流,这个需要用到navigator.mediaDevices.getUserMedia这个方法,原创 2021-03-25 18:04:28 · 766 阅读 · 0 评论 -
0.1 + 0.2 !== 0.3 ?
这是一道很经典的前端面试题,那是什么导致这个问题出现的呢,这里分析下原因:javascript的数字都是采用双精度浮点数,遵循IEEE 754标准,即符号位一位,整数位十一位,小数位五十二位,具体十进制如何转二进制请自行百度。0.1的二进制为0.000110011(0011无限循环)科学计数法为:(0011无限循环)0.2的二进制为0.00110011(0011无限循环)科学计数法为:(0011无限循环)根据IEEE 754标准小数位有五十二位,所以需要对于无限循环的二进制进行进位。原创 2021-03-23 17:04:36 · 237 阅读 · 0 评论 -
Fragment,Portal和Suspense
Fragment:<!DOCTYPE html><html><head> <meta charset="utf-8" /> <title>test</title></head><body> <div id="container"></div></body><script src="./vue.global.js"></scri原创 2020-08-21 17:58:19 · 245 阅读 · 0 评论 -
使用腾讯serverless爬取贴吧信息
'use strict'const axios = require('axios')const cheerio = require('cheerio')const iconv = require('iconv-lite')const DB_HOST = process.env[`DB_HOST`]const DB_PORT = process.env[`DB_PORT`]const ...原创 2020-08-21 15:47:27 · 257 阅读 · 1 评论 -
前端常用算法学习总结
一.动态规划给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。例如,给定三角形:[ [2], [3,4], [6,5,7], [4,1,8,3]]自顶向下的最小路径和为11(即,2+3+5+1= 11)。动态规划我个人的理解是:能将一个大问题分解为一个个小问题,并且这些小问题之间有共性能重复调用。那么如何判断这...原创 2020-08-21 15:27:30 · 680 阅读 · 1 评论 -
js微任务宏任务
面试有问到,很长时间没记有点忘记了,记录学习下:宏任务:setTimeout(web,node) setInterval(web,node) setImmediate(node) requestAnimationFrame(web)微任务:process.nextTick(node) MutationObserver(web) Promise(node,web)...原创 2020-08-19 16:56:51 · 219 阅读 · 0 评论 -
Vue keep-alive的实现原理
使用vue的时候,想必大家都是用过keep-alive,其作用就是缓存页面以及其状态。使用了这么久vue只知道如何使用但不明白其中原理,昨天翻看实现代码,这里做个笔记。这里以vue3为例,整个组件的源码为:const KeepAliveImpl = { name: `KeepAlive`, // Marker for special handling inside the re...原创 2020-01-16 17:26:08 · 5142 阅读 · 0 评论 -
初探serverless(腾讯云函数)
官方文档:https://cloud.tencent.com/document/product/583闲来无聊,一直听说serverless最近比较火热,试了下腾讯的serverless云函数。个人对于serverless的理解:其实serverless顾名思义,就是无服务器架构,并不是说不需要服务器,只是服务器的管理与资源分配无需用户关系,用户只需要编写对应的函数,提交到对应平台,然...原创 2019-12-18 15:18:24 · 2757 阅读 · 1 评论 -
vue3.0时间切片(废除)
一直对时间切片非常感兴趣,虽然最新的vue-next中剔除了时间切片,但是这里还是可以借鉴下其中的原理和思想:首先要先知道javascript的执行机制,javascript的任务分为macro-task宏任务和micro-task微任务,宏任务主要为同步代码,settimeout,setInterval等,微任务为promise,process.nextTick等。网上有一张图能比较清楚的说...原创 2019-11-14 11:34:55 · 1030 阅读 · 0 评论 -
vue3.0响应式原理(四)
最后简单介绍下ref与computed,首先先看ref的主要代码:export function ref(raw?: unknown) { if (isRef(raw)) { return raw } raw = convert(raw) const r = { _isRef: true, get value() { track(r, Op...原创 2019-11-08 16:20:24 · 1580 阅读 · 0 评论 -
vue3.0响应式原理(三)
讲完effect的大概实现,重新回到在二中一开始讲到订阅的实现,这里重新给到订阅的源码:function createGetter(isReadonly: boolean) { return function get(target: any, key: string | symbol, receiver: any) { const res = Reflect.get(target...原创 2019-11-06 17:42:18 · 440 阅读 · 0 评论