1
Mark24 OP JavaScript引擎在行末自动添加分号的机制,产生的坑
如果你想的是这样子的代码: function foo() { return { name: 'foo' }; } 如果你不小心,多了换行了,像这样 或者这就是你心目中的“多行代码”的样子 function foo() { return { name: 'foo' }; } 其实会变成: function foo() { return; { name: 'foo' }; } 正确的姿势是: function foo() { return { // 这里不会自动加分号,因为{表示语句尚未结束 name: 'foo' }; } |
2
RoshanWu 2015 年 7 月 31 日 |
3
pelloz 2015 年 7 月 31 日
数值精度不够,服务器返回的long类型的id会丢失精度,导致错误。最好直接使用String类型传数据。
|
4
ychongsaytc 2015 年 7 月 31 日
Date
|
6
thinkmore 2015 年 7 月 31 日
**@RoshanWu** thanks
|
7
learnshare 2015 年 7 月 31 日
|
8
est 2015 年 7 月 31 日
|
9
sumhat 2015 年 7 月 31 日
for 循环中的 closure 有问题,比如:
for (var i in elements) { var element = elements[i]; doSomething(element, function() { console.log(element.name); } } log 出来永远是最后一个。 |
11
mouhong 2015 年 7 月 31 日
@sumhat 这其实不能算 Closure 的坑,是 JavaScript 早期版本没有块级作用域的坑,如果用 strict mode 里的 let element = elements[i],就不会有这个问题。
|
12
forest520 2015 年 7 月 31 日
nodejs的parseInt("000300"),猜猜结果是什么?
|
13
kenshinhu 2015 年 7 月 31 日
还有值拷贝的坑
|
14
morethansean 2015 年 7 月 31 日
@sumhat 这不是问题吧……这不是 feature 么……
|
15
bramblex 2015 年 7 月 31 日
各种坑……以及各种坑我自己造的工具……
https://github.com/bramblex/BlxJSTK |
16
civet 2015 年 7 月 31 日
['10', '10', '10'].map(parseInt)
|
17
neetrorschach 2015 年 7 月 31 日
好像js的正则不支持零宽断言
|
19
ChefIsAwesome 2015 年 7 月 31 日 via Android
(Num).toFixed(n) 居然返回的是字符串
|
20
zhea55 2015 年 7 月 31 日
|
21
bramblex 2015 年 7 月 31 日
@neetrorschach 也不支持命名分组
|
23
sneezry 2015 年 7 月 31 日 via iPhone
0.1+0.2==0.3
|
25
dong3580 2015 年 7 月 31 日
@ChefIsAwesome
这个是大坑啊。。。计算精度问题, |
26
MntCw 2015 年 7 月 31 日 如果了解javascript解析/编译原理,就不会有这些问题。原理读得太少,上手就是操作,等发现问题了就把这些归类为坑。
|
27
dant 2015 年 7 月 31 日
[1,2,3].map(parseInt) //=> [ 1, NaN, NaN ]
[1,2,3].map(function(x){return parseInt(x);}) //=> [ 1, 2, 3 ] |
28
kenshinhu 2015 年 8 月 1 日
@zonghua 我记得有下在搞monngoose 时,返回的结果是Document类型,直接赋值一个变量时,再修改里的的元素是失效的,这个算是 值拷贝的问题吗?
|
29
GuangXiN 2015 年 8 月 1 日 @sneezry 0.1+0.2==0.3返回false不是js独有的坑呀,这是二进制无法精确表示小数导致的,C语言也有这个坑,PHP也有,Python也存在。
|
30
dcoder 2015 年 8 月 1 日
<a href="http://stackoverflow.com/questions/4886632/what-does-var-that-this-mean-in-javascript">this that ... </a>
|
33
oscarzhao 2015 年 8 月 1 日
拷贝对象时,JSON.parse(JSON.stringify(obj))比较蛋疼
JSON.stringify 用在 map上面会输出为 [], 直接打印能显示出来 |
35
Mark24 OP JavaScript排序坑
会把数字先转换为字符串,再用字符串去排序 …… 反人类 |
36
Mark24 OP 补充楼上,高清图片url:"
"具体描述 廖雪峰JavaScript教程,sort篇 http://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/0014351226817991a9c08f1ec0a45c99b9209bcfc71b8f6000 |
37
mingyun 2015 年 9 月 4 日
Json.stringify ()会默认忽略 undefined 的 key
|