你不知道的JavaScript·第一部分;如何禁止JavaScript对象重写?;JS写小游戏「跳一跳」外挂之Canvas图像识别;前端工程师面试题(性能优化);React Native VS Flutter评测;JavaScript 工作原理之十二-网络层探秘及如何提高其性能和安全性;学渣的模块化之路——50行代码带你手写一个common.js规范;HTTP 内容编码,也就这 2 点需要知道
-
你不知道的JavaScript·第一部分 JavaScript 被列为 ‘动态’ 或 ‘解释执行’ 语言,于其他传统语言(如 java)不同的是,JavaScript是边编译边执行的。 一段源码在执行前会经历三个步骤: 分词/词法分析 -> 解析/语法分析 -> 代码生成 分词/词法分析 这个过程将字符串分解成词法单元,如 var a = 2; 会被分解成词法单元 var…
-
如何禁止JavaScript对象重写? 译者按:使用Object.preventExtensions()、Object.seal()和Object.freeze(),可以禁止重写JavaScript对象。 译者:Fundebug 原文: Preventing modification of JavaScript objects 由于JavaScript的灵活性,我们可以轻易地 重写(override) 一些于其他人定义的 对象(object) 。换句话说,任何人都可…
-
JS写小游戏「跳一跳」外挂之Canvas图像识别 17年结尾的时候微信发布新版重点推出了「小游戏」概念,H5的游戏再次火了起来,新版微信开屏的游戏就是「跳一跳」游戏可玩度很高,网上也出现了各种语言版本的外挂,前几天看到一篇用nodejs搭建的外挂,需要手动点击截屏图片来判断当前和下一步的位置然后跳转,于是就起了用Canvas来实现图像的想法,后面有实现了自动跳…
-
前端工程师面试题(性能优化) 1. 性能优化1 1.1 页面重构怎么操作? 网站重构:在不改变外部行为的前提下,简化结构、添加可读性,而在网站前端保持一致的行为。 也就是说是在不改变UI的情况下,对网站进行优化,在扩展的同时保持一致的UI。 对于传统的网站来说重构通常是:
-
React Native VS Flutter评测 对于很多读者的部分疑问, 我做了一些研究, 用另外一篇文章进行了解答.纪洪波:关于Flutter iOS安装包大小的解读 ——————–原文————————- 之前分别用iOS原生和Fl
-
JavaScript 工作原理之十二-网络层探秘及如何提高其性能和安全性 原文请查阅这里,略有改动,本文采用知识共享署名 4.0 国际许可协议共享,BY Troland。 本系列持续更新中,Github 地址请查阅这里。 这是 JavaScript 工作原理的第十二章。 正如在之前关于渲染引擎的文章中所讲的那样,我们相信好的和伟
-
学渣的模块化之路——50行代码带你手写一个common.js规范 一、简述 一个js文件就是一个模块 会自动把写的代码块套一层闭包 浏览器不兼容CommonJS的根本原因,在于缺少四个Node.js环境的变量.(module,export,require,global) 既然没有,我们就手写一个吧,这里先普及下备用的基
-
HTTP 内容编码,也就这 2 点需要知道 Hi,大家好,我是承香墨影! HTTP 协议在网络知识中占据了重要的地位,HTTP 协议最基础的就是请求和响应的报文,而报文又是由报文头(Header)和实体组成。大多数 Http 协议的使用方式,都是依赖设置不同的 HTTP 请求/响应 的 Header 来实现的。 本系列《实用 HTTP》就抛开常规的 Header 讲解式的表述方…
-
ES6 中的 三种异步解决方案 部分案例来自 阮一峰 的ES6 教程前置知识准备Generator 函数 执行会返回一个迭代器(Iterator), 在迭代器上可以调用 next() 方法, 执行下一
-
旖美信息技术前端开发经理陈国兴:抽象语法树与Javascript 【51CTO.com原创稿件】2018年5月18-19日,由51CTO主办的全球软件与运维技术峰会在北京召开。此次峰会围绕人工智能、大数据、物联网、区块链等12大核心热点,汇聚海内外60位一线专家,是一场高端的技术盛宴,也是顶级IT技术人才学习和人脉拓展不容错过的平台。 在“前端工程实践”分会场,旖美信息技术前端开发经理陈国兴…
-
使用VUE实现textarea固定输入行数与添加下划线样式. 先上效果图###textarea下划线设置一张1*35//行高的图片 , 设置背景图即可.background: url('./img/linebg.png') repeat; border: none;outline: none;overflow: hidd
-
前端 WebView 指南之调试篇 原文: https://imnerd.org/webview-debug.html WebView 是一个客户端浏览器控件,可以实现加载并渲染网页的逻辑。但是这个控件并不能完全同等于浏览器,而且我们页面的一些行为会依赖客户端的交互所以我们需要在 WebVie
-
Redux-saga-整理 介绍 在redux中更好的解决异步操作 redux-saga相当于在redux原来的数据流中多了一层,对action进行监听 接收到action时,派发一个任务 saga通过Generator方式创建,异步方法同步化 正常redux流程 加入redux-
-
React前奏,函数式编程基本概念 函数式编程基本概念 写在之前,这些内容参考自O`REILLY系列图书《React学习手册》 在React中,UI是用纯函数表示的,并且在构造DOM时,是以声明式(与此相对的,是命令式)的方式。而声明式的编程是函数式编程更广义的一部分。所以,先熟悉函数式
-
在浏览器中使用原生 JavaScript 模块 (译) 上周在四个不同的地方看到了推荐Using JavaScript modules on the web 这篇文章,之前一直没有去了解过原生模块在web浏览器中该如何使用,周末把这篇文章大致翻译了一下。 JS 模块 目前已得到所有主流浏览器的支持,本文将讲
-
Vue-插件开发 插件分类Vue.js 的插件应当有一个公开方法 install 。这个方法的第一个参数是 Vue 构造器 , 第二个参数是一个可选的选项对象:MyPlugin.install = function (Vue, options) { Vue.myGlob
-
javascript array like “array like”(类数组) 这类数据对象见得挺多的,典型的如“NodeList”、argument对象以及字符串,它们的共同点是(非官方定义): 拥有一个值为自然数的 length 属性 可以按索引顺序访问 prototype 不是 Array 将类数组转为数组的方法 call call 算是典型用法了,唯一的缺陷就…
-
【第1313期】一个Vue页面的内存泄露分析 前言 每个人每天只有24小时,除了工作,还想做点自己感兴趣的事情。因为有了前端早读课,觉得挺有趣的。今日早读文章由《高效前端:web高效编程与优化实践》作者@李银城授权分享。 正文从这开始~ 什么是内存泄露?内存泄露是指new了一块内存
-
记一次通过c#运用GraphQL调用Github api 一、Graphql是什么 最近在折腾使用Github api做个微信小程序练练手,本篇文章就是在这个过程中记录。 直接先看下GraphQL的语法风格,感受一下:query { repository(owner:"octocat", name:"Hell
-
一起来学SpringBoot | 第二十五篇:打造属于你的聊天室(WebSocket) SpringBoot 是为了简化 Spring 应用的创建、运行、调试、部署等一系列问题而诞生的产物, 自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程 Webscoket 对浏览器有一定的要求,所以使用之前要考虑兼容性的问题…. Webscoket …
-
Webpack下多环境配置的思路 前言 由于前后端分离的前端应用脱离了后端的支持,在单独开发前端应用时,页面调试时使用固定的开发环境地址还好,如果出现在本地开发时需要调试不同环境的远端API,或者需要将应用部署到不同环境的服务器上时,如果不将这些环境对应的服务器地址、环境专属变量等单独配置,也
-
vue使用中的内存泄漏 今天看到一篇关于js使用中内存泄露的文章,以及chrom浏览器查看内存泄漏的方法,决定留着。什么是内存泄露?内存泄露是指new了一块内存,但无法被释放或者被垃圾回收。new了一个对象之后,它申请占用了一块堆内存,当把这个对象指针置为null时或者离开作用域导致
-
Web Animations API 将在 Safari Preview 59 版本中被支持 Over the last 8 months we have been working on adding support for Web Animations, a W3C standard offering Web developers a JavaScr
前端日报栏目数据来自码农头条,每日分享互联网上热门的前端开发、移动开发、设计、资源和资讯等,为开发者提供动力,如果觉得内容对你有用,记得分享给你的小伙伴。进入码农头条查看更多