20190324 前端开发日报

前端 input 输入框可能被攻击的几种方式及防范;优雅的实现动态加载 css、js;使用 JavaScript 对象 Rest 和 Spread 的7个技巧;【重学Vue】数据响应原理真的是双向绑定吗?;AJAX 的进阶使用(Blob、ArrayBuffer、FormData、Document、JSON、Text);《前端面试手记》之谈谈promise/async/await的执行顺序;vue开发项目完全指南;优化 JavaScript 条件语句的5个技巧

  1. 前端 input 输入框可能被攻击的几种方式及防范 最近看到一篇文章,文章讲到输入框有被 注入代码攻击 的危险,自己做了一个小示例,发现确实有这样的情况。 示例 先来看小示例吧,一个最简单的留言功能,输入框输入信息,然后把信息插入页面: 页面效果 关键代码 <body> <div id="content"></div> <input id=’i…
  2. 优雅的实现动态加载 css、js 前端开发需求总数层出不穷,有时需要在某个时刻、某个页面、某个组件,甚至某个逻辑中加载一些css、js文件,比如微信sdk,地图插件、主题css等等,还要在加载完成之后,执行一些逻辑。这些第三方文件,往往只在一个场景用到,并不想放在全局,而第三方文件又没办法通过dynamic import打包进来,此时就需要某种动态加载任…
  3. 使用 JavaScript 对象 Rest 和 Spread 的7个技巧 使用 JavaScript 对象 Rest 和 Spread 的7个技巧 原文作者:Joel Thoms 原文标题:7 Tricks with Resting and Spreading JavaScript Objects 原文: https://blog.bitsrc.io/6-tric… Rest 和 Spread 操作符不仅仅可以用于让参数休息和扩展数组。 下面针对 JavaScript 对象时使用 Rest 和 Spr…
  4. 【重学Vue】数据响应原理真的是双向绑定吗? 最近 Ant Design Vue 作者 – 唐金州,在某平台开课了,在整个课程中系统的讲述了Vue的开发实战。在第八讲中介绍了Vue双向绑定的问题,这里我整理一些资料客观的分析一下 Vue数据响应原理到底是不是双向绑定 。 很多同学在理解 Vue 的时候都把 Vue 的数据响应原理理解为双向绑定,但实际上这是不准确的,我们之前提到…
  5. AJAX 的进阶使用(Blob、ArrayBuffer、FormData、Document、JSON、Text)Ajax 即 Asynchronous Javascript And XML (异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。在无需重新加载整个网页的情况下,能够更新部分网页的技术。一般我们使用 XMLHTTPRequest、Fe…
  6. 《前端面试手记》之谈谈promise/async/await的执行顺序 内容速览 题目和答案 输出解释 再谈谈async/await 最新的v8和谷歌浏览器的正确输出 查看全部教程 / 阅读原文 1. 题目和答案 故事还是要从下面这道面试题说起:请问下面这段代码的输出是什么? {代码…} 上…
  7. vue开发项目完全指南这篇文章总结了vue项目的所遇到的问题,包括跨域、用户认证、接口统一管理、路由配置、兼容性处理,性能优化等内容。 项目github地址 : 前端 [链接] 后端: [链接]
  8. ES6之Reflect2、为什么要设计Reflect?(1)将Object对象的属于语言内部的方法放到Reflect对象上,即从Reflect对象上拿Object对象内部方法。(2)将用 老Object方法 报错的情况,改为返回false老写法
  9. 在 WebStorm 中,配置能够识别 Vue CLI 3 创建的项目的别名 alias @ 抄袭连接 我们使用 Webpack 经常会配置一些别名 alias 指向特定的目录,这样在使用 import 等语句时就不用写一大堆的相对路径了,常见的是将项目的 src 设置为 @ ,比如某文件的路径是 src/libs/util.js ,配置后,任何地方就可以这样导入: import util from ‘@/libs/util.js’; 复制代码 当然,这是很基础的 …
  10. 上天的Node.js之爬虫篇 深入浅出轻松爬取数据 【深入浅出】npm的第三方包 puppeteer 在对应的js文件内运行命令行工具 npm i puppeteer -D 即可
  11. 结合 async 异步函数 – 提高 Promise 的易用性 开局一张图 async function myAsyncFunc(){ try { const fulfilledValue = await promise }catch(rejectValue){ console.error(‘error:’, rejectValue) } } 复制代码 函数定义之前使用了 async 关键字,就可以在函数内使用 await 。 当您 await 某个 Promise 时,…
  12. 必须要会的 50 个React 面试题如果你是一位有抱负的前端程序员并准备面试,那么这篇文章很适合你。本文是你学习和面试 React 所需知识的完美指南。
  13. 细数 CSS 伪元素及其用法 编者按:本文作者高峰,360奇舞团前端工程师,W3C性能工作组/WOT工作组成员。 引言 CSS中有两个很常见的概念,伪类和伪元素。 伪类用于在页面中的元素处于某个状态时,为其添加指定的样式。 伪元素会创建一个抽象的伪元素,这个元素不是DOM中的真实元素,但是会存在于最终的渲染树…
  14. 浅析web端的消息推送原理 转载本文需注明出处:EAWorld,违者必究。 引言: 在互联网高速发展的时代里,web应用大有取代桌面应用的趋势,不必再去繁琐的安装各种软件,只需一款主流浏览器即可完成大部分常规操作,这些原因都在吸引着软件厂商和消费者。而随着各大厂商浏览器版本的迭代,前端技术的不断革新,消息推送用到的场景也越来越多…
  15. 从setTimeout理解JS运行机制 console.log(1); setTimeout(function () { console.log(2); }, 0); console.log(3); 复制代码 问:最后的打印顺序是什么? 这个问题如果不了解js的运行机制就会答错 正确答案是:1 3 2 无论setTimeout的执行时间是0还是1000,结果都是先输出3后输出2,这就是面试官常常考查的js运行机制的问题,接下来我们要引…
  16. Angular, React 和 Vue 开发团队的福音:前端代码分析 SaaS 服务 杭州共驾科技在3月20日正式推出为Angular, React和Vue定制的代码静态分析SaaS服务。 angulardoc.cn 程序静态分析较多应用在C++和Java的项目中,而共驾科技的AngularDoc产品系列是世界上唯一为JavaScript和TypeScript项目做代码静态分析的工具。在过去二年多时间我们致力于为Angular应用提供服务,而现在这些功能…
  17. 基于 Gitlab CI 和 Kubernetes 的 CI/CD 上节课我们将 Gitlab CI Runner 安装到了 Kubernetes 集群中,接下来看看如何结合 Kubernetes 和 Gitlab CI 进行持续集成和持续部署。 基本配置 首先将本节所用到的代码库从 Github 上获得:cnych/gitlab-ci-k8s-demo,可以在 Gitlab 上新建一个项目导入该仓库,当然也可以新建一个空白的仓库,然后将 Githu…
  18. 聊一聊前端换肤 之前在做网站换肤,所以今天想聊聊网站换肤的实现。网页换肤就是修改颜色值,因此重点就在于怎么来替换。 一般实现 如上图,我们会看到在某些网站的右上角会出现这么几个颜色块,点击不同的颜色块,网站的整体颜色就被替换了。要实现它,我们考虑最简单的方式:点击不同的按钮切换不同的样…
  19. React 和 Redux 的动态导入对于大型 Web应用程序,代码组织非常重要。 它有助于创建高性能且易于理解的代码。 最简单的策略之一就是代码分离。 使用像 Webpack 这样的工具,可以将代码拆分成更小的部分,它们分为两个不同的策略,静态和动态。
  20. 【从蛋壳到满天飞】JS 数据结构解析和算法实现-Arrays(数组) 前言 【从蛋壳到满天飞】JS 数据结构解析和算法实现,全部文章大概的内容如下: Arrays(数组)、Stacks(栈)、Queues(队列)、LinkedList(链表)、Recursion(递归思想)、BinarySearchTree(二分搜索树)、Set(集合)、Map(映射)、Heap(堆)、PriorityQueue(优先队列)、SegmentTree(线段树)、Trie(字典树)、UnionFind(并查集)、…
  21. Angular service的单例模式前台在的菜单,需要向后台进行请求,但是这样就造成每次点击一个菜单都会重新请求,造成菜单会出现短暂闪烁的情况,所以考虑使用service的单例模式来解决这个问题。
  22. 使用angular中的单元测试,脱离后台独立开发(二)在前文中,我们展示了在单元测试中,如何注入依赖,并改写依赖中特定方法中的返回值。从而达到脱离后台,独立开发前台的目的。
  23. fabric nodejs链码示例1 0 导言 智能合约是区块链中一个非常重要的概念和组成部分。在Fabric中内成为Chaincode,中文翻译为链码。涉及到链码地方都是 Chaincode. 本示例是一个资产交易的示例 主要实现如下的功能: 初始化 A、B 两个账户,并为两个账户赋初始资产值; 在 A、B 两个账户之间进行资产交易; 分别查询 A、B 两个…
  24. 最熟悉的陌生人:JavaScript数据类型最近面试了三个开发,他们都没有说清楚JS的基本类型有哪些。而且往往错误的说了一些C语言的数据类型,例如int, float, double之类的数据类型。
  25. 【前端性能优化】高性能JavaScript读书笔记 序 曾经看过一篇文章,有一句话这样说: 只有在大学的图书馆里,你才能真正赚回你交的学费。 临近毕业,还想再去图书馆多转转。偶然在架子上发现了这本书,一看作者是写大名鼎鼎的红宝书的人,就很感兴趣。再者,最近用 JavaScript 刷 LeetCode 发现,提交显示 JavaScript 要比 Go 语言或 Python 有更大的时间和内…

关注github前端日报 订阅精彩文章

前端日报栏目数据来自码农头条,每日分享互联网上热门的前端开发、移动开发、设计、资源和资讯等,为开发者提供动力,如果觉得内容对你有用,记得分享给你的小伙伴。进入码农头条查看更多


关注我

我的微信公众号:前端开发博客,在后台回复以下关键字可以获取资源。

  • 回复「小抄」,领取Vue、JavaScript 和 WebComponent 小抄 PDF
  • 回复「Vue脑图」获取 Vue 相关脑图
  • 回复「思维图」获取 JavaScript 相关思维图
  • 回复「简历」获取简历制作建议
  • 回复「简历模板」获取精选的简历模板
  • 回复「加群」进入500人前端精英群
  • 回复「电子书」下载我整理的大量前端资源,含面试、Vue实战项目、CSS和JavaScript电子书等。
  • 回复「知识点」下载高清JavaScript知识点图谱

每日分享有用的前端开发知识,加我微信:caibaojian89 交流