昨天已经讲到了goog.inherits(),主要负责通过为子构造函数原型对象通过原型链继承父构造函数的原型对象的方法,完成继承.这样继承只完成了原型对象的继承,看看之前的那张图: 是不是感觉父构造函数好像没什么用处啊,还记得上篇文章,构建一个超级对象的设想吗?这个要依赖另一个API,goog.base(). 在看源代码之前让我们看看一个简单的demo,温习一下goog.inherit(),这个demo还可以帮助我们了解goog.base()可以做些什么. demo代码: 输出结果: 分析: 先…
直接看代码吧: base: function (me, opt_methodName, var_args) { var caller = arguments.callee.caller; if (caller.superClass_) { // Copying using loop to avoid deop due to passing arguments object to // function. This is faster in many JS engines as of late 2…
最近在项目是使用了google closure框架,深入研究了一下源码,先从最简单的继承系统吧. 废话不多说,closure继承模块主要有2个API: goog.inherits(childCtor,parentCtor); goog.base(me,opt_methodName,var_args); 先看一下,goog.inherits的源码 goog.inherits = function(childCtor, parentCtor) { function tempCtor() {}; te…
Contents Introduction Background Hello Closure World Dependency Management Making an AJAX call with Google Closure Closure Templates Using plovr to Simplify Closure Development More Closure Templates Animations in Google Closure Using plovr for Produ…
前言 Google Closure Compiler 是 Google Closure Tools 的一员,在 2009 年底被 Google 释出,早先,有 玉伯 的 Closure Compiler vs. YUICompressor,主要就压缩率上进行了对比,另外有 承玉 的 应用 closure compiler 高级模式,对 CC 的高级模式做了些介绍. 本文将详细介绍 CC 的高级模式部分,更重要的是,阐述 CC 高级模式背后的思考 CC 是真正的编译器 Closure Compil…
本文主要选取了目前比较流行的JavaScript框架Dojo.Google Closure.jQuery.Prototype.Mootools和YUI进行对比,主要是根据网上的资料整理而成,希望可以供大家参考,如有错误欢迎指出:) 主流框架对比 Dojo(重量级框架) Dojo是一个强大的面向对象JavaScript框架.主要由三大模块组成:Core.Dijit.DojoX.Core提供Ajax,events,packaging,CSS-based querying,animations,JSO…
一.背景 前端开发中,特别是移动端,Javascript代码压缩已经成为上线必备条件. 如今主流的Js代码压缩工具主要有: 1)Uglify http://lisperator.net/uglifyjs/2)YUI Compressor http://developer.yahoo.com/yui/compressor/3)Google Closure Compiler https://developers.google.com/closure/compiler/ 自从jQuery等流行库使用U…
网上搜索了,目前主流的Js代码压缩工具主要有Uglify.YUI Compressor.Google Closure Compiler,简单试用了UglifyJS 和Google Closure Compiler 两种工具的基本用法. 一.UglifyJS UglifyJS是用JavaScript编写的JavaScript压缩工具.官网:http://lisperator.net/uglifyjs/1.通过NPM安装UglifyJS(1)安装Node.js从Node.js官网https://no…
介绍 GCC(Google Closure Compiler)是由谷歌发布的Js代码压缩编译工具.它可以做到分析Js的代码,移除不需要的代码(dead code),并且去重写它,最后再进行压缩. 三种压缩模式 GCC提供三种压缩模式: 1)Whitespace only 2)Simple 3)Advanced 我们以这段简单的代码为例 function sayHello(name) { alert('Hello, ' + name); } sayHello('binnng'); 分别使用这三种压…
Google Developing for Android 二 - Memory 最佳实践   |   分类于 Android最佳实践 原文:Developing for Android, II The Rules: Memory 在决定应用的行为,是否有好的用户体验以及整体的设备体验来说,内存的使用可能是独立因素中最重要的.内存因素包括应用的内存占用,以及内存搅动(导致的垃圾回收会对运行期间的性能有影响). 避免在循环中分配内存 内存分配虽然不可避免,但是应尽可能的避免,特别是在平凡的调用的代…