摘要: 1. ASCII一个字节中前7个bit的低128个字符表示.2. ANSI利用第8个bit, 即数字128 - 255的高128表示. 每个地区有不同的表示方式, 这种相异的编码系统称为代码页code page. 因为某些语言有上千个字符, 一个字节无法表示这么多字符, 所以有了双字节字符集DBCS(Double-byte charater set) 的解决方案, 即有的字母使用一个字节来表示, 有的使用两个字节.3. Unicode在Unicode中一个字符被映射到一个码点(code point), 可以理解成一个字符在字符表中的位置. 例如,Hello 对应的码点为U+0048 U+006 阅读全文
posted @ 2010-03-13 11:36 FlyingCat 阅读(338) 评论(0) 推荐(0)
摘要: 1 对象相关的一些语言特性1.1 一切皆为对象JavaScript里所有的东西都是对象. 对象是属性的集合. 数字, 字符串, 布尔值等原始值是"伪对象", 它们同样拥有属性, 但是是在栈上分配并按值传递. 而其他的对象是堆上分配并按引用传递.一个很重要的概念是, 函数也是对象, 能够作为变量的值, 返回值, 参数或者属性的值. 函数对象特殊的地方是能通过"xxx()"语法执行包含在xxx函数对象... 阅读全文
posted @ 2009-09-21 21:39 FlyingCat 阅读(12739) 评论(6) 推荐(9)
摘要: JavaScript中的函数:1.可以作为返回值, 参数或变量的值.2.可以嵌套定义.3.函数内部能引用外部变量(嵌套作用域).这样就存在一个问题, 函数定义时(即实例化Function)的作用域链与函数执行时的作用域链可能不同.闭包就是用来解决这个问题: 创建函数实际上是将引用环境和函数代码打包成一个可执行实体.Code:[代码]虽然创建3个(互相独立的)闭包时 j 的值都不同, 但是打包的是同... 阅读全文
posted @ 2009-09-17 22:29 FlyingCat 阅读(461) 评论(0) 推荐(0)
摘要: 1.理解this为晚绑定. 确定的值为最终调用时所依附的对象, 即xxx.yyy()语法.没有指定则为全局对象, 网页中为window对象.赋值语句仅复制函数对象的引用. 函数定义时的绑定信息将被丢弃. 2.实际由于this于运行时会被改写,一个常见的技巧是用var o_this = this, 然后通过闭包传递.可以通过Funtion的apply方法手工绑定this, 模拟C#中委托中的行为.[... 阅读全文
posted @ 2009-09-16 21:21 FlyingCat 阅读(432) 评论(0) 推荐(1)