- 浏览: 30643 次
- 性别:
- 来自: 广州
最新评论
文章列表
函数上下文概念
- 博客分类:
- JavaScript基础
call 和 apply 都是为了改变某个函数运行时的 context 即上下文而存在的,换句话说,就是为了改变函数体内部 this 的指向。因为 JavaScript 的函数存在「定义时上下文」和「运行时上下文」以及「上下文是可以改变的」这样的概念。
-------------------------------------------------
【参考】
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。作者:赵望野链接:http://www.zhihu.com/question/20289071/answer/14745394来源:知乎
从程序风格(比如可读性)、源文件大小、字节码大小和执行时间比较以下两段代码:
Code1:
boolean even = false;
if(even == true){
System.out.println("iseven");
}
Code2:
boolean even = false;
if(even){
System.out.println("iseven");
}
一、程序风格
代码1,属于对布尔值得冗余判断,应该用代码2作为良好的风格推荐。
二、字节码
两 ...
从程序风格(比如可读性)、源文件大小、字节码大小和执行时间比较以下两段代码:
Code1:
if(number % 2 == 0)
iseven = true;
else
iseven = false;
Code2:
iseven = number % 2 == 0;
一、程序风格
1、简洁性,毫无疑问是代码2比较简短清洁。但代码1也很简单。
2、可读性,对于初学者,尤其是程序设计的初学者,当然是代码1好理解、可读性强,符合生活中的思考逻辑。其他人尤其是程序员,一般会认为代码2可读性好。
二、源文件大小
...
参考:
[1]js中apply使用方法小议 - AlvinXiao - 博客园
http://www.cnblogs.com/xiaohongwu/archive/2011/06/15/2081237.html
[2]Js apply()使用详解 - 农村的我的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/business122/article/details/8000676
其中提到一个apply的巧妙运用,那就是把数组的值参数化为参数列表。
Math.max后面可以接任意个参数,最后返回所有参数中的最大值:
Math.max(5 ...
翻译自:Private Members in JavaScript http://www.crockford.com/javascript/private.html
作者虽然写于早年,但还是挺有参考价值和值得学习的。
JavaScript中的私有成员
JavaScript是世界上被误解最深的程序设计语言。一些人认为它缺乏 ...
JavaScript开发中有时为何用!!
在JS开发中,有时会见到如下形式的代码:
var has_init = !!target.init;
为何不直接用var has_init = target.init;呢?
解释:
!运算符作用于null、undefined时的结果都是true,故对于null、undefined使用两次!,结果就是false。表明未有init代码。也就是区分了:
◆明确定义了target中的init值,自然has_init就是target.init;
◆如果没有设置target中的init值,has_init再经过两次!之后,就成为fals ...
window.eval()和IE:window.execScript()
window.execScript方法在最新的浏览器中(Firefox,IE,Chrome),只有IE支持。
window.eval():所有浏览器都支持。
my.exec=function(code){
if (window.execScript) // Only for IE
window.execScript(code);
else window.eval(code);
};
在一种应用环境下,输入一个double值,小数点位数不太多(比如2位),如果要原值扩大100倍再转成int,则有些double值不能正确换。比如
int id = (int)( d * 100 );
如果d = 10.03.
则转成的结果是1002。
好的方式是:double→String→int,
String dString = String.valueOf(d);
String str = dString.replace(".", "");
int ...
一、症状
Windows Server2008 SP1中大量的TIME_WAIT端口不能关闭和释放。
二、观察方式
(1)用【netstat -ano|findstr "3306" > c:\1.txt】命令(2)打开1.txt可以看到大量的与3306端口资源被占用不能释放。
三、问题所在
(1)见:http://support.microsoft.com/kb/2553549/zh-cn?spid=11737&sid=156
(2)“从系统启动,在 Windows Vista 中、在 Windows 7 中,Windows Server 20 ...