使用JIT(Just-In-Time)编译器
JIT编译器概览
JIT编译器是JVM的核心。它对于程序性能的影响最大。CPU只能执行汇编代码或者二进制代码,所有程序都需要被翻译成它们,然后才能被CPU执行。C++以及Fortran这类编译型语言都会通过一个静态的编译器将程序编译成CPU相关的二进制代码。PHP以及Perl这列语言则是解释型语言,只需要安装正确的解释器,它们就能运行在...
分类:
编程语言 时间:
2014-09-25 01:36:48
阅读次数:
551
本系列作为Effective JavaScript的读书笔记。
对于代码封装,在JavaScript中有两种方式可以办到。第一种就是使用function,第二种则是利用eval()函数,传入到该函数的字符串参数可以是一段代码。
当对使用哪种方式犹豫不决时,使用function。因为使用字符串的一个重要缺点是,传入的字符串并不是一个闭包,而function则可以代表一个闭包。关于闭包...
分类:
编程语言 时间:
2014-09-24 11:57:31
阅读次数:
275
本系列作为Effective JavaScript的读书笔记。
在上一个Item中介绍了bind的一种用法:用来绑定this对象。但是实际上,bind含有另一种用法,就是帮助函数进行柯里化。关于柯里化,这里有一份百科可以参考:
http://zh.wikipedia.org/wiki/%E6%9F%AF%E9%87%8C%E5%8C%96
但是实际上,关于柯里化只需要记住一点就够...
分类:
编程语言 时间:
2014-09-23 14:06:24
阅读次数:
153
当你看到标题,有兴趣打开本文,那我推测,你应该是准备考“二级C++等级考试”。如果我猜对了,希望在下文对你的考试有所帮助;如果我猜错了,你不妨也用短暂的时间看看,这在编程实践中也是需要注意的,你就当复习、加深,找共鸣吧。
(一)构造函数——从最易遇到的问题说起
(1)构造函数的初始化列表
1)构造函数:Point(float a,float b){x=a;y=...
分类:
编程语言 时间:
2014-09-22 21:23:33
阅读次数:
314
本系列作为Effective JavaScript的读书笔记。
当需要将方法抽取出来作为回调函数使用的时候,常常会因为this的指向不明而发生错误,比如:
var buffer = {
entries: [],
add: function(s) {
this.entries.push(s);
},
concat: function() {
return this....
分类:
编程语言 时间:
2014-09-22 12:16:52
阅读次数:
204
本系列作为Effective JavaScript的读书笔记。
假设需要一个API用来遍历若干元素,像下面这样:
var it = values(1, 4, 1, 4, 2, 1, 3, 5, 6);
it.next(); // 1
it.next(); // 4
it.next(); // 1
相应的实现可以是:
function values() {
var ...
分类:
编程语言 时间:
2014-09-19 21:12:46
阅读次数:
223
本系列作为Effective JavaScript的读书笔记。
arguments对象只是一个类似数组的对象,但是它并没有数组对象提供的方法,比如shift,push等。因此调用诸如:arguments.shift(),arguments.push()是错误的。
在Item 20和Item
21中,知道了函数对象上存在call和apply方法,那么是不是可以利用它们来让argu...
分类:
编程语言 时间:
2014-09-19 10:10:25
阅读次数:
174
本系列作为Effective JavaScript的读书笔记。
在Item 21中,介绍了结合apply方法实现的可变参数列表函数average,它实际上只声明了一个数组作为参数,但是利用apply方法,实际上可以接受若干元素作为参数:
function averageOfArray(a) {
for (var i = 0, sum = 0, n = a.length; i < ...
分类:
编程语言 时间:
2014-09-18 11:35:53
阅读次数:
278
我们来 看 EcmaScript5 规范中的 数组新的API ,它们是非常有用的,
介绍完这一部分 ,我们将用 Array 数组 这个对象 来构建 一个类似于Java中ArrayList 类,
以便于封装 通用 的逻辑,实现代码复用。
API :
/**
@param {Function} callback
@param {Object} [initialValue]
@retur...
分类:
编程语言 时间:
2014-09-16 22:07:41
阅读次数:
336
本系列作为Effective JavaScript的读书笔记。
通常而言,一个函数中this的指向和该函数的调用类型相关,比如当函数直接作为函数被调用时,this一般指向的是全局对象(StrictMode时指向undefined);当函数作为方法被调用时(即x.method()这种形式),this指向的是x;当函数作为构造方法被调用时,this指向的是一个新创建的对象。
但是...
分类:
编程语言 时间:
2014-09-16 10:45:50
阅读次数:
187