JavaScript函数式编程——JavaScript基础

你离开我真会死。 提交于 2019-12-16 07:01:56

JavaScript基础

理解JavaScript语言

JavaScript函数式语言的血统更多一些。

  • 函数式一等公民(一等对象)。函数与其他对象共存,并且能够像任何其他对象一样地使用
  • 函数闭包
  • 作用域
  • 基于原型的面向对象

对于其他特性:

  • 生成器:一种能够基于一次请求生成多次值的函数,不同的请求之间也能挂起执行
  • Promise:让我们更好地控制异步代码
  • 代理:控制对特定对象的访问
  • 高级数据方法
  • Map:用于创建字典集合
  • Set:处理仅包含不重复项目集合
  • 正则表达式:简化用代码书写起来很复杂的逻辑。
  • 模块:把代码划分为较小的可以自包含的片段,使项目更容易管理。

转换编译器

为了能够支持旧的浏览器,解决这个问题的方法之一是使用转换编译器transpilers(转换器+编译器:transformation + compiling)。能够将前沿的JavaScript代码转换为等价的能够在当前浏览器中运行的代码

常用的转换编译器为:Traceur和Babel

理解浏览器

在这里插入图片描述
主要的概念:

  • 文档对象模型(DOM):DOM是Web应用的结构化的UI表现形式。
  • 事件:大部分JavaScript应用都是事件驱动的应用,表示大部分代码执行在对某个特殊事件响应的上下文
  • 浏览器API:帮助我们与世界交互,浏览器提供获取设备的信息、存储本地数据或远程浏览器交互的API。

最佳实践

调试

主流浏览器都为开发者提供了调试Web应用程序的工具。

测试

使用

assert(condition, message);

第一个参数是一个应为真值的条件,第二个参数是当断言为假时所展示的一句话。

性能分析

提高跨平台开发能力

对于JavaScript基本原理和核心API的渗入理解能让你成为更全能的开发者。通过使用浏览器和Node.js,能够开发出几乎你能想到的任何类型的应用。

  • 桌面应用:通过NW.jsElectron的库可以开发桌面应用。通过包装浏览器使我们能用标准的HTML、CSS和JavaScript以及一些额外的访问文件系统的能力来构建桌面应用。
  • 移动应用:使用类似的Apache Cordova的框架开发
  • 使用Node
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!