20191029 前端开发日报

前端模块化的发展;three.js入门篇;WebComponent:像搭积木一样构建Web应用;JavaScript ES6函数式编程(三):函子;神奇的javascript;脑图学习 JavaScript 之犀牛书【四】类型转换、变量;websoket原理和实战;JavaScript — event介绍以及兼容处理

  1. three.js入门篇 一个偶然的机会看到了用three.js开发的3D效果,立即引起了我的兴趣,直接用JavaScript轻松的创建在浏览器上显示的3D模型,这在以前要做这样的效果门槛可是很高的,这实在是前端开发的一个福音。 简介 OpenGL是最常用的跨平台图形库,WebGL是基于OpenGL设计的面向web的图形化标准,提供了一系列JavaScript API,通过…
  2. WebComponent:像搭积木一样构建Web应用 我们站在开发者和项目角度来聊聊 WebComponent,它是一套技术的组合,能提供给开发者组件化开发的能力。 那什么是组件化呢?其实组件化并没有一个明确的定义,不过这里我们可以使用 10 个字来形容什么是组件化,那就是: 对内高内聚,对外低耦合 。对内各个元素彼此紧密结合、相互依赖,对外和其他组件的联系最少且接…
  3. JavaScript ES6函数式编程(三):函子 前面二篇学习了函数式编程的基本概念和常见用法。今天,我们来学习函数式编程的最后一个概念——函子(Functor)。 相信有一部分同学对这个概念很陌生,毕竟现在已经有很多成熟的轮子,基本能满足我们日常的业务开发,所以没必须重复造轮子。但是,作为一名(未来)优秀的程序员,光会用怎么能行呢?必须要理解更深层的思…
  4. 神奇的javascript 看一张图 这张图对js魔法的吐槽可谓非常到位。下面,我们就从这张图出发来详细讲讲js。 数字类型与精度问题 虽然js是弱类型语言,声明变量时也不需要显式指定类型。但是,数据本身依旧还是有类型的,比如数字和字符串就是以不同形式存在的数据。在js中,所有数字的类型都为number。其中,一个特殊的…
  5. 脑图学习 JavaScript 之犀牛书【四】类型转换、变量 上一篇讲了 JavaScript 中的类型和值,这篇主要关于 类型转换 、 变量 。 脑图 关键知识点 包装对象 犀牛书这里提到了一个 包装对象 的概念(见 3.6 ),使用包装对象的概念解释了 为什么字符串、数字等原始值也可以拥有各自的属性 。 当 JavaScript 要读取字符串 s 的属性时,将会通过调用 new…
  6. websoket原理和实战 思考:像这样的消息功能怎么实现? 如果网页不刷新,服务端有新消息如何推送到浏览器? 解决方案,采用轮询的方式。即:通过js不断的请求服务器,查看是否有新数据,如果有,就获取到新数据。 这种解决方法是否存在问题呢? 当然是有的,如果服务端一直没有新的数据,那么js也是需要一直的轮询查询数据,这就是一种资源…
  7. JavaScript — event介绍以及兼容处理 JavaScript — event介绍以及兼容处理 1.事件流 浏览器发展到第四代时(IE4及 Netscape Communicator 4),浏览器开发团队遇到一个问题:页面的哪个部分会拥有某个特定的事件?可以想象在一张纸上的一组同心圆,如果把手指放在圆心上,那么你的手指指向的不是一个圆,而是纸上的所有圆。即在点击一个按钮时,不仅点击了…
  8. JS之typeof和instanceof方法具体实现 判断变量类型 typeof 1 //"number" typeof ‘1’ //"string" typeof {} //"object" typeof true //"boolean" typeof undefined // "undefined" typeof null //"object" #bug typeof Symbol //"function" typeof Symbol(1) //"symbol"…
  9. JS 语言中那些让你抓狂又容易混淆的概念 下面罗列的js语言中那些让人抓狂混淆的概念,你遇到过几个? 建议收藏此文,每当要面试的时候提前拿出来温习温习巩固巩固,多次下来,这些概念相信会永远印在你的脑海中~~ 每一小节都会有一道对应的练习题供参考,如果你做出的答案和题目的答案一样,那么这一小节的内容相信你已经掌握了 1、Array.p…
  10. vue-router从源码到实践到进阶 HTML5 开始提供了对 history 栈中内容的操作。通过 history.pushState/replaceState 实现添加地址到 history 栈中。 pushState/replaceState() 方法 pushState() 需要三个参数: 一个状态对象, 一个标题 (目前被忽略), 和 (可选的) 一个URL. 让我们来解释下这三个参数详细内容: 状态对象 — 状态对象state是…
  11. 2019 JSConf China《面向传统,Serverless 进化之路》分享文字版 本次 JSConf China 分享的话题叫 《面向传统,Serverless 进化之路》,主要讲述的是阿里集团内部逐步迁移到 Serverless 体系的过程以及思考。 自 GMTC 以来,国内各个公司在 Serverless 投入都有所变化,腾讯和阿里云都铆足了劲在上面发力,提出了各自的解决方案,前段时间腾讯推出了他们的 Serverless 2.0,以及…
  12. Vue 3.0 —— Watch 与 Reactivity 代码走读 本篇文章同步发表在个人博客 Vue 3.0 —— Watch 与 Reactivity 代码走读 如果对源码查看没有头绪的可以先参见 本篇文章为梳理 scheduler、 effect、scheduler 与 proxy 之间的关系 本篇文章以一个很简单小例子打断点入口开始分析,情况很单一,仅仅是一个简单的 object,没有涉及到组件实例,目的也很简单:搞清楚…
  13. 做题学知识(2)之JS 的 Number 的标准IEEE 754 let a = 111111111111111110000 let b = 1111 a + b // 请问 a + b 的值是多少呢? 复制代码 第二题 let a = 0.1 let b = 0.2 let c = 0.3 c === a + b // 请问是 false 还是 true 呢? 复制代码 答案 这俩道题主要考察了 js 数字标准的问题,js 用的是 IEEE 754 64 位双精度浮点数。所以需要注意俩个问题: …
  14. 你需要知道的13个关于JavaScript数组的小技巧 译者:道奇 作者:Duomly 原文: 13 useful JavaScript array tips and tricks you should know 数组是JavaScript中最常见的概念了,它为JavaScript的内部数据存储提供了很多可能性,考虑到在编程之初,数组是JavaScript最基础的主题之一,在这篇文章中,我会带来一些你可能不知道但是非常有用的小技巧!下…
  15. hox – 下一代 React 状态管理器我并不是针对某个轮子,我只想说现有所有的轮子都囿于 redux , unstated-next 的思想,无非就是 action , dispatch , reducer , useStore , Provider , Context 这些东西,在这些东西上做排列组合。概念一…
  16. js 的some every之前被问some  every 可以传递多少个参数 ,我真是….. 现在说一下是 是三个三个参数分别是item,index,arr(数组具体项,位置,数字本身),两个都是for循环,不同的是 some every 处理的是返回的false和true的问题
  17. Spring Boot项目如何同时支持HTTP和HTTPS协议如今,企业级应用程序的常见场景是同时支持HTTP和HTTPS两种协议,这篇文章考虑如何让Spring Boot应用程序同时支持HTTP和HTTPS两种协议。
  18. 深入理解JS之执行上下文(创建-执行-回收) 承接上文,本文讲解执行上下文的创建、执行和回收阶段,重点是创建和执行阶段,回收涉及到浏览器的内存回收策略,本文暂不涉及以后会提到。(本文主要总结自网络和书籍中,其中加上本人自己的总结和思考) 创建阶段 首先创建应该是在预解析阶段,这个阶段主要工作有: 确定 this 的值,也被称为 This Binding…
  19. JavaScript ES6中 class的本质上述代码一和代码二其实是一样的,es6的写法明显更为清晰和简单。其实,es6中的class真正的本质是一个语法糖!
  20. 超简单的VueRouter快速上手 新手入坑,求大佬轻喷, Thanks♪(・ω・)ノ 起步: 需要vue-router库 cnpm i vue vue-router -D npm安装的vue导入的是这个目录下面的文件:vue/dist/vue.esm 上手: 要在页面中使用vuerouter,至少需要 容器 : router-view 路由表 : router 容器:router-view new Vue({ …
  21. 用 js 写卡牌游戏(六) 前言 很久没更这个系列,其实是我发现在国内如果想要运营发布游戏不是那么简单的事情,需要有公司并且去申请运营资格,如果要有收费内容还需要申请版号。作为一个独立开发者,可能很难做到这些,所以前段时间有些灰心,不太提的起劲做这个项目。 不过最近也想通了,最初这个项目也不是以…
  22. 从 0 到 1 实现一款简易版 Webpack 一、前言 这款简易版 webpack 主要实现的功能如下: 异步加载代码块 提取公共代码块(commons)/第三方库(vendors) loader 编译 二、Webpack 工作流程 Webpack 的运行流程是一个串行的过程,从启动到结束会依次执行以下流程: 初始化参数 : 从配置文件和 Shell 语句中读取与合并参数,得…
  23. 从对称加密到非对称加密再到认证中心:https 的证书申请 作者 | 马启航 杏仁后端工程师。「我头发还多,你们呢?」 前言 本来觉得也就是一个普通的博客网站,用不用 HTTPS 似乎也没什么大不了。但是在网络上各种信息的狂轰乱炸下,还是决定把这个问题解决一下。在这件事之前笔者还遇到了一个很恶心的问题,那就是我被…

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

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


关注我

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

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

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