
javascript
文章平均质量分 79
p312011150
这个作者很懒,什么都没留下…
展开
-
Performance_js中计算网站性能监控利器
Perform作为前端工程师,无论是业务需要还是我们对于自己开发的Web站点的要求,往往都有性能监测以及数据上报的需求。而Performance API除了简单易用对前端工程师极其友好的特点之外,还有能提供高精确度的时间测量(千分之一毫秒)这个特点。1.Performance方法Performance提供的方法可以灵活使用,获取到页面加载等标记的耗时情况。performance...转载 2019-06-26 16:10:59 · 1240 阅读 · 0 评论 -
js获取上传图片真实的尺寸大小和存储大小
</pre><pre name="code" class="html"><input id="file" type="file"><input id="Button1" type="button" value="button" onclick="check()"><script>window.check=function(){v...转载 2019-05-10 09:34:33 · 1439 阅读 · 0 评论 -
移动端H5图片上传的那些坑
上周做一个关于移动端图片压缩上传的功能。期间踩了几个坑,在此总结下。大体的思路是,部分API的兼容性请参照caniuse:利用FileReader,读取blob对象,或者是file对象,将图片转化为data uri的形式。 使用canvas,在页面上新建一个画布,利用canvas提供的API,将图片画入这个画布当中。 利用canvas.toDataURL(),进行图片的压缩,得到图片的...转载 2019-05-09 18:35:51 · 2610 阅读 · 0 评论 -
WinXinApi
https://www.baidufe.com/item/f07a3be0b23b4c9606bb.html转载 2019-04-07 16:45:48 · 239 阅读 · 0 评论 -
WebAssembly Studio:Mozilla 提供的 WASM 工具
WebAssembly Studio是 Mozilla 开发的一款在线工具,用于将 C/C++ 和 Rust 代码编译为 WASM 格式。WebAssembly Studio 是 Mozilla 在数月前通过合并WasmExplorer和WasmFiddle项目而推出的一个新项目。Mozilla 并非计划通过在 IDE 上另起炉灶,以替代那些当前得到广泛采用的 IDE,而是意在将对 WebAs...转载 2019-03-28 23:31:28 · 2256 阅读 · 0 评论 -
解决IE浏览器跨域名iframe嵌套网页获取cookies
问题产生的前因:A网站采用iframe框架形式嵌套了B网站的一个页面C,直接打开页面C会在本地保留一个cookie文件,而当采用A网站iframe框架形式嵌套后就无法成功生成cookie文件,该问题仅在IE浏览器环境下出现,firefox、chrome、Safari浏览器下没有问题。造成该问题的原因:一个所谓的隐私首选项(简称为P3P)的W3C标准。只有在每一页上设置一个cookie发送...转载 2019-03-13 19:45:40 · 2087 阅读 · 1 评论 -
BackTrack5(BT5)各版本下载
BT5R3(最新版本)http://www.nigesb.com/backtrack-5-r3-released.htmlBT5R2KDE版32位:http://ftp.halifax.rwth-aachen.de/backtrack/BT5R2-KDE-32.isoGNOME32位:http://ftp.halifax.rwth-aachen.de/backtrack/BT5R2...转载 2019-03-09 15:52:22 · 33282 阅读 · 7 评论 -
JSON Web Token 入门教程
原文地址:http://www.ruanyifeng.com/blog/2018/07/json_web_token-tutorial.htmlJSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案,本文介绍它的原理和用法。一、跨域认证的问题互联网服务离不开用户认证。一般流程是下面这样。1、用户向服务器发送用户名和密码。2、服务器验证通过后,在当前对...转载 2019-03-08 14:38:36 · 126 阅读 · 0 评论 -
swagger 返回值描述
原文地址:https://blog.51cto.com/5634409/2343942?source=dra今天被前端训了一顿,慌得一逼,说你们写的接口,返回值写的是什么东西,只有公共的三个字段......我们的API文档是基于 swagger组件写的.如是有了下面的东东示例:1.1.返回字段1.1.1.返回字段(对象)1...转载 2019-03-07 14:21:36 · 20970 阅读 · 3 评论 -
Vue技术内幕
http://hcysun.me/vue-design/art/7vue-reactive.html#observer-构造函数转载 2019-03-06 14:17:24 · 807 阅读 · 0 评论 -
为什么正则表达式*在一个地方比较慢,在其他地方比较快?
原文地址:https://cloud.tencent.com/developer/ask/36730我在java / groovy中使用了很多正则表达式。我经常使用regex101.com。显然我也在看正则表达式的性能。有一点我注意到,.*正确使用可以显着提高整体性能。但是,.*在正则表达式的结尾处简直就是性能杀手。例如,在这个正则表达式中,所需的步数是27:如果我先改...转载 2019-02-28 17:27:12 · 408 阅读 · 0 评论 -
正则表达式太慢?这里有一个提速100倍的方案(附代码)
原文地址:http://baijiahao.baidu.com/s?id=1586734159271313745&wfr=spider&for=pc作者:Vikash Singh编译:肖依月、吴双、钱天培“当遇到一个文本处理问题时,如果你在第一时间想到了正则表达式,那么恭喜你,你的问题从一个变成了俩!“如果你曾参与过文本数据分析,正则表达式(Regex...转载 2019-02-28 17:21:57 · 1976 阅读 · 0 评论 -
Cordova
Cordova提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头、麦克风等。Cordova还提供了一组统一的JavaScript类库,以及为这些类库所用的设备相关的原生后台代码。Cordova支持如下移动操作系统:iOS, Android,ubuntu phone os, Blackberry, Windows Phone, Palm...转载 2018-11-23 09:47:04 · 262 阅读 · 0 评论 -
Performance API
来自《JavaScript 标准参考教程(alpha)》,by 阮一峰目录performance.timing对象 performance.now() performance.mark() performance.getEntries() performance.navigation对象 参考链接重要说明:本教程已经搬迁,此处不再维护,请访问新网址:wangdoc.com/ja...转载 2018-11-22 18:43:33 · 399 阅读 · 0 评论 -
Angularjs 双向绑定机制解析
文章转自:http://www.2cto.com/kf/201408/327594.htmlAngularJs 的元素与模型双向绑定依赖于循环检测它们之间的值,这种做法叫做脏检测,这几天研究了一下其源码,将 Angular 的实现分享一下。 首先看看如何将 Model 的变更更新到 UI Angular 的 Model 是一个 Scope 的类型,每个 Scope 都归属于一个...转载 2018-11-22 09:38:48 · 320 阅读 · 0 评论 -
构建自己的AngularJS,第一部分:Scope和Digest
原文链接:http://teropa.info/blog/2013/11/03/make-your-own-angular-part-1-scopes-and-digest.htmlAngular是一个成熟和强大的JavaScript框架。它也是一个比较庞大的框架,在熟练掌握之前,需要领会它提出的很多新概念。很多Web开发人员涌向Angular,有不少人面临同样的障碍。Digest到底是怎么做...转载 2018-11-22 09:37:54 · 213 阅读 · 0 评论 -
浅谈vue,angular,react数据双向绑定原理分析
传统做法前端维护状态,手动操作DOM更新视图。前端框架对服务器数据通过模版进行渲染。当用户产生了一个动作之后,我们通过document.getElementBy... 手动进行DOM更新。 框架帮忙分离数据和视图,后续状态更新需要手动操作DOM,因为框架只管首次渲染,不追踪状态监听变化。双向数据绑定当我们在前端开发中采用MV*的模式时,M - model,指的是模型,也就是数据,V ...转载 2018-11-22 09:34:11 · 1986 阅读 · 1 评论 -
世界robocode机器人的四大运动方式分析
摘要:前言Robocode在短短的时间内风靡全球,全世界的robocode爱好者设计出了大量的优秀智能机器人,他们都拥有各自的运动方式,有的很轻易被击中,有的却很难射击。设计一个好的运动方式是优秀robocode机器人取胜的要害。上届世界中级组冠军Fermat就是靠他让敌人难以琢磨的运动躲过敌人一发发的子弹而取得胜利。(当然,他的优秀的瞄准射击也是取胜的要害)怎样的运动才能不被敌人击中,让敌人琢磨...转载 2018-11-19 16:05:34 · 2782 阅读 · 0 评论 -
预测性定位
https://www.ibm.com/developerworks/library/j-pred-targeting/转载 2018-11-19 14:55:04 · 401 阅读 · 0 评论 -
Object.create(null) 和 {} 区别是什么
Object.create(null)没有继承任何原型方法,也就是说它的原型链没有上一层。console.log(Object.create({}).toString); // function toString() { [native code] }console.log(Object.create(null).toString); // undefined ...转载 2018-11-15 10:15:38 · 504 阅读 · 0 评论 -
Diff 算法的原理是什么, 怎样学习和理解?
https://neil.fraser.name/writing/diff/myers.pdfhttp://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.4.6927http://citeseerx.ist.psu.edu/indexDifference Algorithm and Its Variationshttps:/...转载 2018-11-14 13:41:24 · 2987 阅读 · 1 评论 -
详解vue的diff算法
前言我的目标是写一个非常详细的关于diff的干货,所以本文有点长。也会用到大量的图片以及代码举例,目的让看这篇文章的朋友一定弄明白diff的边边角角。先来了解几个点...1. 当数据发生变化时,vue是怎么更新节点的?要知道渲染真实DOM的开销是很大的,比如有时候我们修改了某个数据,如果直接渲染到真实dom上会引起整个dom树的重绘和重排,有没有可能我们只更新我们修改的那一小块do...转载 2018-11-14 13:33:51 · 416 阅读 · 0 评论 -
通用代码高亮插件(SyntaxHighlighter)
写这篇博文的起源是我想把自己的博客弄的更加美观,相信你也一样。 首先,我要说SyntaxHighlighter插件的实现方式及应用示例,然后再说明如何将其应用到自己的博客,使博客的代码着色更加美观。 源码: SyntaxHighlighter 示例源码下载SyntaxHighlighterSyntaxHighlighter 源码下载1) Sy...转载 2018-11-13 14:37:50 · 591 阅读 · 0 评论 -
7个高性能JavaScript代码高亮插件
对于喜欢写技术博客的同学来说,一定对代码高亮组件非常熟悉。一款优秀的JavaScript代码高亮插件,将会帮助你渲染任何一种编程语言,包括一些关键字的着色,以及每行代码的缩进等。今天我们要来分享一些高性能的JavaScript代码高亮插件,这些JavaScript代码高亮插件将非常有效地帮你实现在网页上的代码编辑和展示。1、SyntaxHighlighter – 最优秀的JavaScript代...转载 2018-11-13 14:37:22 · 6960 阅读 · 1 评论 -
hash、hashchange事件
1、hash即URL中"#"字符后面的部分。 ①使用浏览器访问网页时,如果网页URL中带有hash,页面就会定位到id(或name)与hash值一样的元素的位置; ②hash还有另一个特点,它的改变不会导致页面重新加载; ③hash值浏览器是不会随请求发送到服务器端的; ④通过window.location.hash属性获取和设置hash值。 window.lo...转载 2018-11-13 14:06:02 · 290 阅读 · 1 评论 -
到底什么是事件驱动架构EDA?这篇文章讲得比较清楚。
原文地址:https://www.jdon.com/49113通过事件进行应用程序的设计是自20世纪80年代后期以来的一种实践。我们可以在前端或后端的任何地方使用事件。当按下按钮时,某些数据发生更改或执行某个后端动作。 但是事件究竟是什么呢?我们什么时候应该用它呢?缺点是什么? What/When/Why当类或组件之间内聚性很高,它们的耦合度应该很低,也就是说当组件需...转载 2018-11-13 12:03:10 · 2025 阅读 · 0 评论 -
若想进阶为软件架构师,这10本书必须读!
软件架构已经成为每一个软件项目的重要组成部分,在构建可靠的软件体系结构时,明确该系统最重要的组成部分,考虑这些部分如何组合在一起,并在设计这些系统时做出关键决策,是任何软件开发项目的基础 。 高级开发人员和软件架构师之间是存在巨大差异的 。作为架构师,你需要有更多的经验才能设计出端到端解决方案。 软件架构理论和实践一样重要,因此我们的软件开发人员和架构师团队准备了今年最好的软件架构...转载 2018-11-13 11:47:07 · 11797 阅读 · 0 评论 -
软件架构入门
软件架构(software architecture)就是软件的基本结构。合适的架构是软件成功的最重要因素之一。大型软件公司通常有专门的架构师职位(architect),只有资深程序员才可以担任。O'Reilly 出版过一本免费的小册子《Software Architecture Patterns》(PDF), 介绍了五种最常见的软件架构,是非常好的入门读物。我读后受益匪浅,下面就是我的笔...转载 2018-11-13 11:23:07 · 177 阅读 · 0 评论 -
JavaScript MVC js也mvc
JavaScript MVC中文:http://blog.youmila.com/?p=423 —from yapollo.li@gmail.com英文:http://www.alistapart.com/articles/javascript-mvc/ —from Jonathan Snookjavascript 已经从一个“小演员”发展成为舞台的中心”人物“。它的足迹已经遍布我们...转载 2018-11-13 10:40:56 · 201 阅读 · 0 评论 -
React 技术栈系列教程
上周中秋节,我待在家里,写完了 Redux 教程。至此,《React 技术栈系列教程》算是比较完整了。ES6 语法:教程 Babel:教程 React:教程,示例库 Webpack:教程 React 项目脚手架:代码库 Flex 布局:教程,示例 CSS Modules:教程,示例库 React-Router:教程,示例库 Flux 架构:教程,示例库 Redux ...转载 2018-11-12 16:10:46 · 817 阅读 · 0 评论 -
js开发 廖雪峰
https://www.liaoxuefeng.com/转载 2018-11-12 14:03:31 · 357 阅读 · 0 评论 -
几款科学计算显卡对比(GTX Titan X、GTX 980、Tesla K40 K80 及quadro K4200)
科学计算显卡的两个主要性能指标:1、CUDA compute capability,这是英伟达公司对显卡计算能力的一个衡量指标;2、FLOPS 每秒浮点运算次数,TFLOPS表示每秒万亿(10^12)次浮点计算;3、另外,显存大小也决定了实验中能够使用的样本数量和模型复杂度。 1、CUDA compute capability对比 GTX Titan x :5.2...转载 2018-11-12 11:54:57 · 39772 阅读 · 0 评论 -
Nvidia发布Tesla P4、P40两款深度学习芯片 | GTC China 2016
9月13日,NVIDIA(英伟达)在北京国际饭店会议中心召开GTC China 2016大会。在会上,NVIDIA发布了Tesla P4和Tesla P40两款Pascal架构GPU。本次集成了72亿个晶体管的Tesla P4(2560个CUDA核心)和120亿个晶体管的Tesla P40(3840个CUDA核心)是用来让用户识别和查询语音、图像或文本的。Tesla P4&P40的...转载 2018-11-12 11:52:30 · 20545 阅读 · 0 评论 -
通过Jscript中@cc_on 语句识别IE浏览器及版本的代码
激活条件编译支持。 @cc_on 备注 @cc_on 语句激活脚本引擎中的条件编译。 强烈推荐在注释中使用 @cc_on 语句,以使不支持条件编译的浏览器将您的脚本视为有效语法而接受它: /*@cc_on*/ // The remainder of the script.或者,在注释外的一个 @if 或 @set 语句也将激活条件编译。 要求 版本 3 请参见 参考 @if.....转载 2018-11-12 09:22:17 · 899 阅读 · 0 评论 -
windows下yacc和lex开发环境配置(Parser Generator篇)
1.下载安装Parser Generator是Windows下YACC和LEX的实现,是由英国Bumble-Bee Software公司开发.下载地址http://www.bumblebeesoftware.com/downloads.htm.安装软件之后,设置系统环境变量path,在path属性中添加安装bin目录;以我的安装为例,在以前的path属性后添加;D:/Program File...转载 2018-11-11 20:14:36 · 4721 阅读 · 0 评论 -
linux 下怎样安装使用 Yacc 和 Lex
安装过程参照以下步骤: 1、打开网址:www.tcpdump.org/ 下载 libpcap-1.0.0.tar.gz (512.0KB) 软件包,通过命令 tar zxvf libpcap-1.0.0.tar.gz 解压文件,并将其放入自定义的安装目录。2、打开网址:flex.sourceforge.net/ 下载 flex-2.5.35.tar.gz (1.40MB) 软件包,通过 tar ...转载 2018-11-11 20:11:40 · 5707 阅读 · 1 评论 -
论攻击Web应用的常见技术
攻击目标:应用HTTP协议的服务器和客户端、以及运行在服务器上的Web应用等。攻击基础:HTTP是一种通用的单纯协议机制。在Web应用中,从浏览器那接受到的HTTP请求的全部内容,都可以在客户端自由地变更、篡改,Web应用可能会接收到和服务器完全不相同的、被刻意篡改的内容。攻击对象:URL查询字段或表单、HTTP首部、Cookit等。在HTTP的请求报文内加载攻击代码,就能...转载 2018-11-09 09:51:19 · 250 阅读 · 0 评论 -
SPA 中前端路由基本原理与实现方式
SPA 前端路由原理与实现方式通常 SPA 中前端路由有2中实现方式,本文会简单快速总结这两种方法及其实现:修改 url 中 Hash利用 H5 中的 historyHash我们都知道 url 中可以带有一个 hash, 比如下面 url 中的 page2https://www.abc.com/index.html#page21window 对象中有一个事件是 onhashch...转载 2018-11-06 17:52:36 · 283 阅读 · 0 评论 -
最近总结——SPA
单页面应用的定义单页面应用,即 Single Page Application 。SPA 顾名思义,这种应用在客户端浏览器中运行的时候,只会有一个页面,无论进行什么操作,都不会跳转到其他的页面。单页面应用的优点单页面应用相比较传统的网站,可以给用户带来更加流畅的体验。因为不会加载其他页面,所以不会出现页面闪烁,或因为网络延时的问题,造成页面假死的现象。减轻服务器的压力。由于页面只在第一次...转载 2018-11-06 17:48:32 · 180 阅读 · 0 评论 -
前端SPA框架一些看法
说起前端框架,我个人主张有框架不如无框架,这个观点要先从框架和库的区别说起。 我所理解的库,解决的是代码或是模块级别的复用或者对复杂度的封装问题;而框架,更多的是对模式级别的复用和对程序组织的规范,这里的模式是指比如 MVC,为了实现 M 和 V 的解耦,通过 IOC 或是 PubSub 等手段,把丑陋的耦合由经常变化的业务代码转移到不经常变化的框架内部消化。 对于前端来说,在 Web...转载 2018-11-06 17:46:10 · 1792 阅读 · 0 评论