初识JavaScript

JavaScript 最初的目的是为了“赋予网页生命”。它们可以写在 HTML 中,在页面加载的时候会自动执行。它和 Java 之间没有任何关系。它们不需要特殊的准备或编译即可运行,这种编程语言称之为脚本。
现在,JavaScript 不仅仅是在浏览器内执行,也可以在服务端执行,甚至还能在任意搭载了 JavaScript 引擎 的设备中都可以执行。浏览器中嵌入了 JavaScript 引擎,有时也称作 JavaScript 虚拟机。
语法学习网站:https://www.runoob.com/js/js-intro.html

用途

1.搭配CSS/HTML作为动态网页在浏览器中运行
2.基于Node.js技术进行服务器端编程。
3.测试

1 浏览器中的 JavaScript 可以完成下面这些事:

  • 在网页中插入新的 HTML,修改现有的网页内容和网页的样式。
  • 响应用户的行为,响应鼠标的点击或移动、键盘的敲击。
  • 向远程服务器发送网络请求,下载或上传文件(所谓 AJAX 和 COMET 技术)。
  • 检测访客的浏览器信息,获取或修改 cookie,向访问者提出问题、发送消息。
  • 在数据被提交到服务器之前验证数据。

不同的引擎有不同的“代号”,例如:

  • V8 —— Chrome 和 Opera 中的 JavaScript 引擎。
  • SpiderMonkey —— Firefox 中的 JavaScript 引擎。
  • ……还有其他一些代号,像“Trident”,“Chakra”用于不同版本的 IE,“ChakraCore”用于 Microsoft Edge,“Nitro”和“SquirrelFish”用于 Safari,等等。

2 基于Node.js技术进行服务器端编程。

  • 能读、写、复制及执行用户磁盘上的文件或程序。JavaScript 有很多方式和照相机/麦克风或者其他设备进行交互.
  • JavaScript 通过互联网可以轻松地和当前网页域名的服务器进行通讯。

3 测试

  • 通过JS来实现对Web元素的操作,UI测试。
  • JavaScript可以执行接口测试。
  • JavaScript有不同的测试框架

JavaScript 演化变种

针对不同的需求出现了很多JavaScript 进阶版本语言,但是这些语言在浏览器中执行之前,都会被转化成 JavaScript。

这些编程语言的例子有:

  • CoffeeScript 是 JavaScript 的语法糖,它语法简短,明确简洁。通常使用 Ruby 的人喜欢用。
  • TypeScript 将注意力集中在增加严格的数据类型。这样就能简化开发,也能用于开发复杂的系统。TypeScript 是微软开发的。
  • Flow 也添加了数据类型,但是以一种不同的方式。由 Facebook 开发。
  • Dart 是一门独立的语言。它拥有自己的引擎用于在非浏览器环境中运行(如:手机应用),它也能被编译成 JavaScript 。由 Google 开发。

JavaScript 语法

1 变量

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。
引用数据类型:对象(Object)、数组(Array)、函数(Function)。

   //JavaScript 数据类型
var length = 16;                                  // Number 通过数字字面量赋值
var points = x * 10;                              // Number 通过表达式字面量赋值
var lastName = "Johnson";                         // String 通过字符串字面量赋值
var cars = ["Saab", "Volvo", "BMW"];              // Array  通过数组字面量赋值
var person = {firstName:"John", lastName:"Doe"};  // Object 通过对象字面量赋值

JavaScript 变量的生存期
JavaScript 变量的生命期从它们被声明的时间开始。
局部变量会在函数运行以后被删除。
全局变量会在页面关闭后被删除。
JavaScript 对象是属性变量的容器,对象键值对的写法类似于:

  • PHP 中的关联数组
  • Python 中的字典
  • C 语言中的哈希表
  • Java 中的哈希映射
  • Ruby 和 Perl 中的哈希表

2 对象方法和函数


//函数

3 JavaScript 正则表达式

正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。
正则表达式可以是一个简单的字符,或一个更复杂的模式。正则表达式可用于所有文本搜索和文本替换的操作。

语法:
/正则表达式主体/修饰符(可选)
修饰符:

  • i 执行对大小写不敏感的匹配。
  • g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
  • m 执行多行匹配
var patt = /runoob/i
/runoob/i  是一个正则表达式。
runoob  是一个正则表达式主体 (用于检索)。
i  是一个修饰符 (搜索不区分大小写)。

var patt = /e/;
patt.test("The best things in life are free!");
/e/.test("The best things in life are free!");

4 JavaScript 错误

  • try 语句测试代码块的错误。
  • catch 语句处理错误。
  • throw 语句创建自定义错误。
  • finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行。

语法:
try {
... //测试代码块
} catch(e) {
... //异常的捕获与处理
} finally {
... //结束处理
}
如果把 throw 与 try 和 catch 一起使用,那么您能够控制程序流,并生成自定义的错误消息。
语法
throw exception

function myFunction() {
  var message, x;
  message = document.getElementById("p01");
  message.innerHTML = "";
  x = document.getElementById("demo").value;
  try { 
    if(x == "") throw "值是空的";
    if(isNaN(x)) throw "值不是一个数字";
    x = Number(x);
    if(x > 10) throw "太大";
    if(x < 5) throw "太小";
  }
  catch(err) {
    message.innerHTML = "错误: " + err + ".";
  }
  finally {
    document.getElementById("demo").value = "";
  }
}

你可能感兴趣的:(初识JavaScript)