什么是js

  • 一种脚本语言。不具备开发操作系统的能力,而是用于编写控制其他应用程序(如浏览器)的脚本
  • 一种嵌入式语言。不提供与输入输出相关的API,而是嵌入大型应用程序,调用宿主环境(浏览器环境、服务器环境)提供的API
  • 支持多种编程范式(如函数式编程、面向对象编程)。这致使具有很高的灵活性,对一个问题有多种解决方法

js语法

  • 核心语法精简。仅由基本语法构造(如操作符、控制结构、语句)和标准库(一系列具有各种功能的对象,如Array、Data、Math)组成。
  • 可以调用各种宿主环境提供的API接口。如浏览器可以提供浏览器控制类API(用于操作浏览器)、DOM类API(操作网页各种元素)、Web类API(实现互联网各种功能);服务器可以提供各种操作系统的API,如文件操作API、网络通信API

为什么学习js:使用领域广泛

  • 浏览器平台化。浏览器功能越来越强,js不仅可以设计网页,而且能操作本地文件、图片、调用摄像头和麦克风等
  • Node项目的出现。Node项目使js可用于服务器端大型项目的开发,前后端现在都可以用js开发
  • NoSQL数据库允许js直接操作
  • 移动平台的开发

综上,js的最终目的,就是用js一种语言,开发出适应不同平台的(桌面端、服务器端、客户端)程序

学习js的困难所在

  • 涉及大量外部API。尽管核心语法不难,但是要发挥作用,必须配合其他外部组件。这些组件五花八门,数量庞大,掌握绝非易事
  • 存在设计缺陷。某些地方不合理,有些地方运行结果怪异。学习js,很大一部分时间就是搞清楚那里有陷阱

js实验环境

Chrome 浏览器的“开发者工具”里的“控制台”,就是运行 JavaScript 代码的理想环境。

进入控制台以后,就可以在提示符后输入代码,然后按Enter键,代码就会执行。如果按Shift + Enter键,就是代码换行,不会触发执行。

function greetMe(yourName) {
 console.log('Hello ' + yourName);
}

greetMe('World')

可以将上边代码敲入控制台运行

编程语言大杂烩:js

js的语法有多个来源

  • 基本语法:借鉴 C 语言和 Java 语言。
  • 数据结构:借鉴 Java 语言,包括将值分成原始值和对象两大类。
  • 函数的用法:借鉴 Scheme 语言和 Awk 语言,将函数当作第一等公民,并引入闭包。
  • 原型继承模型:借鉴 Self 语言(Smalltalk 的一种变种)。
  • 正则表达式:借鉴 Perl 语言。
  • 字符串和数组处理:借鉴 Python 语言。

为了保持简单,js缺少一些关键的功能,比如块级作用域、模块、子类型等等,但是可以利用现有功能找出解决办法。这种功能的不足,直接导致了js 的一个显著特点:对于其他语言,你需要学习语言的各种功能;而对于 JavaScript,你常常需要学习各种解决问题的模式。而且由于来源多样,从一开始就注定,js的编程风格是函数式编程和面向对象编程的一种混合体。


无欲则刚
76 声望15 粉丝