每个JavaScript程序员应该知道什么?
每个JavaScript程序员都应该具备能够说“我知道JavaScript”的东西吗?
-
不是jQuery。 不是YUI。不是(等)
框架可能很有用,但是它们经常隐藏一些关于JavaScript和DOM实际工作方式的丑陋细节。如果您的目标是能够说“我知道JavaScript”,那么在框架上投入大量时间是相反的。
以下是一些JavaScript语言功能,您应该了解这些功能在做什么并且不会被吸引住,但是对于许多人来说,它们并不是立即显而易见的:
-
那
object.prop
和object['prop']
是同一件事(所以请您停止使用eval
,谢谢);对象属性始终是字符串(即使是数组);[什么for
......in
是和什么不是。 -
什么
undefined
是以及为什么闻到;为什么看似鲜为人知的in
操作员是有益的并且不同于typeof
/undefined
检查;hasOwnProperty
; 目的delete
。 -
该
Number
数据类型是一个真正的浮动; 使用浮点数与语言无关的困难;避免parseInt
八进制陷阱。 -
全局变量和
window
属性如何碰撞;全局变量和文档元素如何在IE中不应该冲突,而应该如何冲突;也必须var
在全球范围内使用以避免这种情况。 -
浏览器和用户代码之间的控制流;同步和异步执行;在控件流内部触发的事件(例如焦点)与控件返回时发生的事件和超时;如何调用所谓的同步内置
alert
函数最终会导致潜在的灾难性重入。 -
跨窗口脚本编写如何影响
instanceof
;跨窗口脚本如何影响跨不同文档的控制流;postMessage
希望如何解决这个问题。
最重要的是,您应该批判性地查看JavaScript,并承认由于历史原因,它是一种不完善的语言(甚至比大多数语言还多),并且避免了最糟糕的麻烦。克罗克福德在这方面的工作绝对值得一读(尽管我并不100%同意他所说的“好零件”)。
-
-
每个 JavaScript 程序员都应该知道什么?
2022-04-11 关注 0 浏览50 1答案
-
每个程序员都应该了解安全性什么?
2022-03-22 关注 0 浏览48 1答案
-
“每个程序员都应该知道的关于内存的帽子”有多少仍然有效?
2022-07-28 关注 0 浏览14 1答案
-
每个程序员应该读的最有影响力的书是什么?
2021-01-30 关注 0 浏览61 1答案
-
为什么 C++ 程序员应该尽量减少“新”的使用?
2022-03-22 关注 0 浏览46 1答案
-
作为学习Python的Java程序员,我应该注意什么?
2021-01-30 关注 0 浏览68 1答案
-
将“ Java School”程序员转变为C或C ++程序员有多难
2021-01-30 关注 0 浏览132 1答案
-
C++ 程序员应该了解哪些常见的未定义行为?
2022-07-28 关注 0 浏览18 1答案
-
成为合格的Scala程序员是否需要您成为合格的Java程序员?
2021-01-29 关注 0 浏览116 1答案
-
为什么Java程序员喜欢将变量命名为“ clazz”?
2021-01-30 关注 0 浏览113 1答案