javaScript 依赖管理 javaScript -- 目录最火热的语言,到处发着光芒, html5, hybrid apps, node.js, full-stack 等等。javaScript 从一个仅仅在浏览器上面的一个玩具语言,一转眼演变成无所不能神一般的存在。但是,由于天生存在着一点戏剧性(javaScript 据传说是在飞机上几天时间设计出来的),模块系统作为一门语言最基本的属性却是javaScript所缺的。 让我们回到过去,通过 <script>
标签来编写管理 js 脚本的年代也历历在目,翻看现在的许多项目,还是能找到这样子的痕迹,但是随着项目规模的不断增长,js文件越来越多,需求的不断变更,让维护的程序员们越来越力不从心,怎么破?
AngularJS在大型单页面应用中的性能优化(二) 尽一些可能避免长列表。ng-repeat会进行了一些很重的DOM操作(更不用说对$$watchers的污染),所以无论是在分页或是在无限滚动中,尽量使用小型数据进行渲染。
要尽量避免使用过滤器。他们会在每个更新周期运行两次,每当发生任何改变时运行一次,另一次是收集更深层次的改变时触发。所以不要直接从内部列表中移除对象,使用CSS控制即可。
主流JavaScript MVC框架性能比较测试:Angular vs Backbone vs Ember 我们一直非常专注于网站性能。我们一直对主流的的JavaScript MVC框架,如Angular,Backbone和Ember的性能很好奇,主要是因为它们能够优雅地解决复杂的问题,我们希望能够使用他们为我们的客户服务。使用这些框架来保证性能和提高开发速度,但下载、解析和执行JavaScript是一个相当大的性能瓶颈,特别是当JavaScript用于产生该站点的HTML内容时。
WebPack:更优秀的模块依赖管理工具,及require.js的缺陷 之前的这篇文章: JavaScript代码组织结构良好的5个特点,作者以reuqire.js为举例,提出应该使用模块化的代码组织方式去管理你的JavaScript代码,并提出了一些注意事项,在此文的评论中有人指出WebPack是比require.js更为优秀的代码组织管理工具,并列举了require.js的一些缺陷。
JavaScript中数学运算的安全范围及开源大整数高精度计算库 JavaScript中整数的最大"安全"数值为在-(2^53 - 1) 和 (2^53 - 1) 之间。超过这个范围的数学计算在有可能是是不准确的,比如在目前最新版的Chrome中:
> 9007199254740991 * 256
2305843009213693700 //1 * 6 = 6, 最后一位应该是6?
在JavaScript的Array数组中调用一组Function方法 我在看几个月前写的一些代码。在一个数组中(arrays)中存放了一组方法(function),在未来的某个时间要一次性将这些方法都执行一遍。你只需要遍历这个数组,并调用每个函数即可:
callbacks.forEach(function(callback) {
callback();
});
2015年的JavaScript:Angular之类的框架将被库取代 JavaScript的世界似乎进入了流失率危机。新框架新技术以不可持续的速度推出并流行。但我认为,社会将适应并采取新的响应式做法。我相信开发者将从整体性框架(frameworks),如Angular.js和Ember等转移到一系列小的,组合的,专业性库(library)上面,以减轻流失的风险,并允许解决方案,在不同的关注领域分别竞争。
JavaScript的设计缺陷?浮点运算:0.1 + 0.2 != 0.3 在JavaScript中进行纯小数运算偶尔会得到不正确的结果:
> 0.1 + 0.2 == 0.3
false
> 0.1 + 0.2
0.30000000000000004
理解JavaScript中的事件路由冒泡过程及委托代理机制 当我用纯CSS实现
这个以后。我开始用JavaScript和样式类来完善功能。
然后,我有一些想法,我想使用Delegated Events (
事件委托)但是我不想有任何依赖,插入任何库,包括jQuery。我需要自己实现事件委托了。
我们先来看看事件委托到底是什么?他们是怎么工作的,怎么去实现这种机制。
用JavaScript制作HTML5动画基础 这是《Foundation HTML5 Animation with JavaScript》一书的附属范例,多达200多个基础动画的示例,由浅入深,由简单到复杂,适合系统学习。这里你可以找到所有关于在浏览器使用JavaScript移动元素的相关知识。这是创建HTML5游戏,动画和页面效果的基础。
它提供了所有相关的数学知识,和你需要了解的物理概念,如加速度,速度,淡入淡出(easing),弹簧(springs),碰撞检测,动量守恒,3D,以及正向和反向运动。帮助所有Web开发人员从Flash切换到HTML 5创建符合标准的游戏,应用和动画,兼容现代浏览器和大多数的移动设备,包括iPhone,ipad,Android设备等。