
技术博客
文章平均质量分 57
古德
遵循本性、本心,顺乎自然,便是德;本心初,本性善,本我无,便成德。舍欲之得、得德
https://github.com/gd-ldj
展开
-
讲一下闭包
如何回答闭包原创 2023-03-06 09:39:12 · 129 阅读 · 0 评论 -
前端八股文
url渲染1、进行DNS解析,域名到对应的ip地址,dns解析耗时,可用dns-prefetch预解析优化 <link rel="dns-prefetch" href="https://fonts.googleapis.com/">2、TCP三次握手,建立TCP链接- c -> s 发送询问- s -> c 回复询问,并询问- c -> s 回复询问四次挥手- 主 -> 被 关闭主动通道,只能被动接收- 被 -> 主 收到关闭消息- 被 ->原创 2022-05-03 17:24:10 · 855 阅读 · 0 评论 -
js小技巧
1、去掉小数点后的0+num原创 2021-10-15 08:47:17 · 100 阅读 · 0 评论 -
前端面试题-字节跳动一面
HTTPS和HTTP区别HTTPS 连接建立的过程CDN 有哪些优化静态资源加载速度的机制?有哪些方式实现 HTTP 请求浏览器缓存?ETag是如何生成的?谈下Promise.race和Promise.all写出一下代码console输出顺序async function async1() { console.log('async1 start'); await async2(); console.log('async1 end');}async function async.原创 2020-08-06 19:25:06 · 483 阅读 · 0 评论 -
跨域问题,前后端该怎么做
从前端的角度来说,跨域请求主要有以下几种方案JSONP 请求跨域资源共享CORS设置代理 proxy 跨域document.domainwindow .nameHTML5的postMessageWebSocket协议跨域具体使用方法可以参考以下几篇文章老生常谈的跨域处理前端常见跨域解决方案(全)JSONP和CORS是最常用的处理跨域方法对于JSONP方案,这是要...原创 2019-04-14 15:15:19 · 1580 阅读 · 0 评论 -
为什么null的typeof 是object呢
为什么null的typeof 是object呢?typeof 返回的正常类型,是这样的typeof 对于基本类型,除了 null 都可以显示正确的类型typeof 1 // 'number'typeof '1' // 'string'typeof undefined // 'undefined'typeof true // 'boolean'typeof Symbol() // ...原创 2019-05-08 18:32:02 · 6222 阅读 · 1 评论 -
原型和闭包的深入理解
对象、原型、原型链、作用域、闭包、上下文环境对象在js中一切都是对象,重点要如何去理解这个“对象”当然也并不都是对象,值类型就不是对象对象–是若干属性的集合,js中对象与java和c#中不同,对象只有属性,没有方法,js中对象用键值对的形式表示,方法也是属性的一种。js是弱类型语言,在对象定义后,可以新增、修改、删除属性对象都是通过函数创建的,函数又却是对象的一种原型...原创 2019-05-13 19:03:41 · 265 阅读 · 0 评论 -
实现未设置固定高度的transtion高度动画
实际应用场景容器的高度是随内容的高度变化的,需要容器高度过渡的展示这个问题实际等同于:用CSS实现由height:0到height:auto的渐变但height:auto实际并不是一个具体的值,浏览器在执行该动画时还未取到实际值,因此没有渐变的效果;解决方案:1,用js获取其实际值,执行动画;2,用max-height代替height,max-height设置一个足够大的值,如由max...原创 2019-05-14 19:27:26 · 1265 阅读 · 0 评论 -
9999999999999999 == 10000000000000000 是真的,你知道吗!
js中 0.1 + 0.2 == 0.3; // false这个大多数前端开发者都知道但是 9999999999999999 == 10000000000000000; // true这个却很少人知道其实它的原理都是一样的 精度丢失的问题JavaScript 的数字都是双精度浮点数,在计算机里用二进制存储。当有效位数超过 52 位时,会存在精度丢失。js中会存在 小数和大整数的精度...原创 2019-05-21 10:30:24 · 9120 阅读 · 2 评论 -
前端开发者必会的英语单词
前端开发者必会的英语单词待整理git commit 日志相关单词feat [fēt]: 新增功能fix [fiks]: 修复bugdocs [doks]: 文档改动style [stīl]: 样式改动test [test]: 测试用例改动refactor riˈfaktər: 重构、优化chore [CHôr]: 项目工程改动暂未分类的virtual [ˈvərCH...原创 2019-06-11 08:57:53 · 4435 阅读 · 0 评论 -
获取url参数的方法
获取url的l参数function getUrlParam (url, key) { let urlObj = new URL(url); return urlObj.searchParams.get(key);}原创 2019-07-09 09:53:15 · 279 阅读 · 0 评论 -
this的深入理解
this的原理this 是 JavaScript 中的一个关键字。它通常被运用于函数体内,依赖于函数调用的上下文条件,与函数被调用的方式有关。它指向谁,则完全是由函数被调用的调用点来决定的。所以,this,是在运行时绑定的,而与编写时的绑定无关。随着函数使用场合的不同,this 的值也会发生变化。但是有一个总的原则:this 总会指向,调用函数的那个对象。JavaScript 语言之...原创 2019-04-25 19:15:13 · 330 阅读 · 0 评论 -
禁用chrome浏览器前进后退
禁用支持触摸手势设备的chrome浏览器的前进后退功能纯js方式阻止网页历史记录前进后退功能<script > //禁用页面前进后退 history.pushState(null, null, document.URL); window.addEventListener('popstate', function () { history...原创 2019-04-15 19:41:45 · 11489 阅读 · 0 评论 -
⌫ 你看到的是框,还是框中有叉???
上面的符号用于表示mac键盘上的delete键和windows键盘上的backspace键但是字符 ⌫ 在windows上的chrome上却不能识别,你会看到这样的 框框windows上的一些非webkit内核浏览器是可以正常显示的兼容方案就是用图标或图片展示,替代字符。...原创 2019-04-10 19:27:45 · 308 阅读 · 0 评论 -
H5页面加载后表单获取焦点并唤起软键盘?
需求:在移动端网页中,无论是表单页面还是信息发布页面,为了提供更好的用户体验,都希望打开页面时,获取焦点弹出键盘。实现?:H5页面并不能直接实现这项功能,由于安全策略,获取焦点弹出键盘需要有用户的主动交互行为,才能实现 。以下,是网上的几种方法,在实际测试中,并没有完全实现效果,测试中发现,输入框 input,textarea 以及input的不同type或有不同的情况出现,具体需求请具体...原创 2019-01-07 18:40:45 · 6177 阅读 · 0 评论 -
前端网页直接实现文件的下载功能
网页实现文件的下载功能以往下载的功能都是后端给的一个下载的连接随着前端技术的发展,前端可以直接导出简单的文件,通过canvas可以实现截屏导出图片这里只记录如何使用post请求配合后端实现文件的下载不要用ajax之类的请求,会把内容直接请求回来,且文件是二进制的,导致乱码显示。如果是 get 请求,那直接换成 window.open(url) 就行了,不喜欢开新窗口的话,创建一个隐藏...原创 2019-01-18 19:24:15 · 13928 阅读 · 0 评论 -
web网页PDF文件预览的实现
chrome可以直接支持PDF文件预览pdf文件a链接直接打开预览需要后端设置上传文件时头部oss设置头的 content-type为 application/pdf否则点击a链接就是下载pdf浏览器直接打开pdf预览,无法修改界面的功能,样式,由于是在触摸屏上全屏预览的,不能出现有离开当前界面的操作,并且大文件打开比较慢使用pdfJs预览插件实现PDF预览直接使用的是官...原创 2019-01-08 20:43:28 · 15069 阅读 · 0 评论 -
跑马灯文字的三种实现方式
跑马灯文字的三种实现方式html实现使用 marquee 标签,配合它的一些属性,可以实现功能强大的跑马灯文字,<marquee> 跑马灯 html实现 </marquee>但是,这个 marquee 标签,并没有被W3C标准录入,也就是在未来的某个时候,它可能会被弃用,请慎用为什么这么好的东东,不被认同呢?在W3C标准中,规定功能性分离。分成为结构、...原创 2019-01-24 19:36:06 · 9251 阅读 · 1 评论 -
前端安全编码
前端安全编码这里只是讲解前端需要考虑的安全问题,后端和网络上的安全问题这里不做讲解web网页中前端开发中需要注意的几个地方url链接的安全问题输入表单内容的安全问题接口提交的安全问题登录密码的安全问题下面通过具体的漏洞类型,进行分析XSS漏洞跨站脚本攻击(英语:Cross-site scripting,因简称与css冲突,无奈简称为:XSS)是一种网站应用程式的安全漏洞...原创 2019-01-31 15:47:36 · 11352 阅读 · 2 评论 -
opacity的继承
opacity的继承纸上得来终觉浅,绝知此事要躬行大家都知道在css3中增加的新属性opacity——不透明度的设定。使用了opacity的元素,它的不透明度会被子元素继承。但是opacity又不同于一般的具有继承的css属性,如果父元素定义了opacity,那么子元素在定义一个opacity,那么子元素的效果其实是两者的乘积…有时候我们不希望子元素的透明度改变。下面我们做几个实验...原创 2019-01-16 20:28:24 · 2429 阅读 · 0 评论 -
让网页变成编辑器,可实时的更改web网页的文字
你或许干过或者听说过修改网页上的内容PS网页上的证书。。。怎么做到的?下载下来,photoshop打开PS,NO NO NO 太麻烦右键审查元素,编辑源代码好像还是有点麻烦,不要怕,还有简单的控制台,输入 document.body.contentEditable=true 按回车这样你就可以直接在浏览器里更改网页的文本内容通过一行简单的指令把Chrome变成所...原创 2019-01-28 19:02:24 · 4211 阅读 · 1 评论 -
JavaScript原理知识
对象、原型、原型链、作用域、闭包、上下文环境对象在js中一切都是对象,重点要如何去理解这个“对象”当然也并不都是对象,值类型就不是对象对象–是若干属性的集合,js中对象与java和c#中不同,对象只有属性,没有方法,js中对象用键值对的形式表示,方法也是属性的一种。js是弱类型语言,在对象定义后,可以新增、修改、删除属性对象都是通过函数创建的,函数又却是对象的一种原型...原创 2019-02-13 19:19:39 · 368 阅读 · 0 评论 -
Video.js的未解之谜
Video.js 的踩坑记最近项目中需求要 web 浏览器直接播放 rtmp 的视频源,强需求,而且资源有限,没办法服务端转其它格式的视频源这种情况下,就只有重拾即将淘汰的 flash 方案,作为过渡期Video.js 的低于6版本的是有封装 flash 的方案的,确定使用 Video.js 的 flash 方案播放 rtmp 的视频开发一切正常,提交测试测试提 bug 过来,不能播...原创 2019-03-17 17:31:11 · 240 阅读 · 0 评论 -
vue学习笔记--基础篇
vue学习笔记–基础篇Vue.js(读音 /vjuː/,类似于 view 的读音)是一套构建用户界面(user interface)的渐进式框架。与其他重量级框架不同的是,Vue 从根本上采用最小成本、渐进增量(incrementally adoptable)的设计。作者:尤雨溪,现居美国新泽西,全职开发维护vue,以及vue生态系统。官方团队成员:全职两个,尤雨溪、蒋豪群,还有很多全球各地...原创 2019-03-26 18:25:07 · 560 阅读 · 0 评论 -
const、let声明的变量会被提升吗
const、let是ES6的新特性,可以声明块级作用域到底会不会声明被提升,现在说法不一,主流是不会被提升个人认为也不会被提升,但是和var一样不能先使用再声明var 声明的变量会被提升到顶部,再赋值console.log(a) var a = 1// undefinedconst、let会在声明地方到块级顶部形成临时性死区,在这区间使用该变量都会被报错console.log(a...原创 2019-01-10 18:55:27 · 4774 阅读 · 4 评论