每个JavaScript程序员应该知道什么?

发布于 2021-02-02 17:15:18

每个JavaScript程序员都应该具备能够说“我知道JavaScript”的东西吗?

关注者
0
被浏览
106
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    不是jQuery。 不是YUI。不是(等)

    框架可能很有用,但是它们经常隐藏一些关于JavaScript和DOM实际工作方式的丑陋细节。如果您的目标是能够说“我知道JavaScript”,那么在框架上投入大量时间是相反的。

    以下是一些JavaScript语言功能,您应该了解这些功能在做什么并且不会被吸引住,但是对于许多人来说,它们并不是立即显而易见的:

    • object.propobject['prop']是同一件事(所以请您停止使用eval,谢谢);对象属性始终是字符串(即使是数组);[什么for...... in是和什么不是。

    • 什么undefined是以及为什么闻到;为什么看似鲜为人知的in操作员是有益的并且不同于typeof/ undefined检查;hasOwnProperty; 目的delete

    • Number数据类型是一个真正的浮动; 使用浮点数与语言无关的困难;避免parseInt八进制陷阱。

    • 全局变量和window属性如何碰撞;全局变量和文档元素如何在IE中不应该冲突,而应该如何冲突;也必须var在全球范围内使用以避免这种情况。

    • 浏览器和用户代码之间的控制流;同步和异步执行;在控件流内部触发的事件(例如焦点)与控件返回时发生的事件和超时;如何调用所谓的同步内置alert函数最终会导致潜在的灾难性重入。

    • 跨窗口脚本编写如何影响instanceof;跨窗口脚本如何影响跨不同文档的控制流;postMessage希望如何解决这个问题。

    最重要的是,您应该批判性地查看JavaScript,并承认由于历史原因,它是一种不完善的语言(甚至比大多数语言还多),并且避免了最糟糕的麻烦。克罗克福德在这方面的工作绝对值得一读(尽管我并不100%同意他所说的“好零件”)。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看