JavaScript
Muge_
这个作者很懒,什么都没留下…
展开
-
JavaScript几个坑
坑之作用域JavaScript的函数定义先扫描整个函数体的语句,把所有申明的变量“提升”到函数顶部,所以下面的程序并不会报错,而是会弹出 Hello, undefinded 变量 b 成了undefinded: (如果是Python一定会报local variable … referenced before assignment,因为变量未赋值前就引用了)'use strict';functio原创 2015-07-03 14:38:41 · 484 阅读 · 0 评论 -
JavaScript笔记
字符串toUpperCase() toLowerCase() substring() indefOf()'str'.toUpperCase(); // "STR" 'STR'.toLowerCase(); // "str" 'hello world'.indexOf('world'); // 6 'hello world'.indexOf('w'); //6 'hello wor原创 2015-07-04 16:36:19 · 305 阅读 · 0 评论 -
JS该不该用位运算
在Google+上看到,Math.floor更快的实现: Math.floor的作用是丢弃小数。大概只写JS的人理解不了为什么会有这样的语法,然后可能去死记硬背,将来在自己的代码中装装逼,根本原理很简单,写过C的人一扫而知。这其实就是位运算,~是取反操作,位运算直接对内存中的二进制位进行操作(注意,只是对整数),不需要额外的资源占用,因为非常快,很多用C语言(当然还有其他静态语言)写的软件都可以看原创 2016-04-04 08:52:37 · 5746 阅读 · 1 评论 -
JavaScript变量引用问题
var a = {n:1}; var b = a; a.x = a = {n:2}; alert(a.x);// --> undefined alert(b.x);// --> {n:2}为什么a.x会是undefied?一步步来解析: 首先将a变量的指针指向 {n:1} 再把b的指针指向a,即{n:1} 先确定a.x 和a这两个变量的指针,如果没有指针则创建,将a.x创建为null原创 2016-02-28 16:14:20 · 1062 阅读 · 0 评论 -
JavaScript字符串拼接的性能问题
这个问题不知从何而生,以前我很少关注细节,今天突然想到,字符串拼接如何高效,或者有高效一说吗?因为我们知道,不同的浏览器引擎不同,如Chrome/Mozilla FF/MSIE,他们都是使用的自己的内核,因此优化程度都不相同。字符串拼接,我想大部分人都会直接使用 + 操作符,尤其是前端操作DOM的时候,的确很方便。那么很多人是不是会想,最简单的代码肯定是性能最差的,最没有技术含量的?不见得,代码的高原创 2016-03-28 09:04:19 · 3729 阅读 · 1 评论