Javascript基础语法
JavaScript(简称“JS”)是一种具有函数优先的轻量级,解释型或即时编译型的编程语言
一、前置知识
什么是JavaScript:JavaScript是一种基于对象和事件驱动的客户端脚本语言,最初的设计是为了检验HTML表单输入的正确性,起源于网景(Netscape)公司的LiveScript语言。
JavaScript的发展历史:JavaScript起源于1995年,由网景公司的布兰登·艾奇(Brendan Eich)开发,最初被称为LiveScript,后与Sun公司组建开发联盟,并改名Javascript。功能随着Web的普及,JavaScript迅速成为Web开发的标准之一,并在20多年的时间里经历了许多变革和进步。
JavaScript的组成:完整的JavaScript是由ECMAScript(语法)、Browser Objects(DOM、BOM)(特性)组成的。
- ECMAScript(ES):ECMAScript 是 JavaScript 的标准化版本,定义了语言的语法、类型、语句、关键字等方面的规范,目前最新的版本是 ECMAScript 2022
时间 | 版本及说明 |
---|---|
1997年6月 | ES1.0,当年7月ECMA262标准出台 |
1998年6月 | ES2.0,该版本修改完全符合ISO/IEC 16262国际标准 |
1999年12月 | ES3.0,成为 JavaScript 的通行标准 |
2007年10月 | ES4.0草案发布,各大厂商意见分歧,该方案未通过 |
2008年7月 | ES3.1并改名为ECMAScript 5,废除ES4.0,所以4.0版本不存在 |
2009年12月 | ES5.0 正式发布 |
2011年6月 | ES5.1,该版本成为了ISO国际标准(ISO/IEC 16262:2011) |
2013年12月 | ES6 草案发布 |
2015年6月 | ECMAScript 2015,TC39委员会决定每年发布一个ECMAScript的版本 |
- JavaScript 版本:JavaScript 的版本是浏览器中实现 ECMAScript 的一种方式,通常与浏览器版本相关联。例如,旧版的 Internet Explorer 使用的是 JavaScript 1.5 版本,而现代浏览器通常支持 ECMAScript 6 及以上版本。
- JavaScript 引擎:JavaScript 引擎是解析和执行 JavaScript 代码的程序。不同的浏览器使用不同的 JavaScript 引擎,例如 Chrome 使用 V8 引擎,Firefox 使用 SpiderMonkey 引擎。
- 如何在HTML中使用Javascript:
- 在
<head>
或者<body>
中<script>
标签,在内部书写JavaScript代码 - 将代码单独保存为.js格式文件,然后在 文件中引入HTML它
<script type="text/javascript" src="脚本链接"></script> <script type="text/javascript"> // 脚本类容 </script>
- 在
二、基础语法
1. JS的注释与分号
1.1 单行注释://
1.2 多行注释:/**/
1.3 语句结束使用分号,如果省略,则由解析器确定语句的结尾。
2. JS的语法特点
2.1 ECMAScript中的一切(变量、函数名和操作符)都区分大小写。
2.2 简单易懂
2.3 弱类型:可以操作任何类型的数据
3. 标识符
3.1 什么是标识符:变量、函数、属性的名字,或者函数的参数
3.2 标识符的命名规则:
- 由字母、数字、下划线(_)或美元符号($)组 成
- 不能以数字开头
- 不能使用关键字、保留字等作为标识符
4. 输入和输出语句
4.1 输出语句:
- alert
- console
- group
- log
- info
- warn
- error
- groupEnd
4.2 输入语句:
- prompt
5. 变量
5.1 什么是变量:变量是在内存中存储值的符号
5.2 变量不是数值本身,它们仅仅是一个用于存储数值的容器
6. 变量的声明与使用
// 使用var关键字定义变量a,并用=给a赋值
var a = 0;
// 输出a的值
console.log(a)
// 同时声明两个变量
var a = 0, b = 1;
7. 变量的默认值
7.1 一个变量只定义,但没有赋初值,默认值是undefined
7.2 一个变量只有被var定义,并赋初值之后,才算正式初始化完成
8. 变量的常见错误
8.1 不用var定义,而直接将值赋予它,虽不引发报错,但会产生作用域问题。
8.2 在使用一个既没有被var定义过,也没有赋过值的字符,就会产生引用错误。
8.3 小练习:依次判断下面的命名是否正确,并给与说明(aBc#123,aBc_123,0a8, var, undefined)
9. 变量命名方法
9.1 驼峰命名法:第一个单词首字母小写,后面的单词首字母大写,如:myName
9.2 下划线命名法:每个单词之间用下划线分开,如:my_name
9.3 帕斯卡命名法:每个单词首字母大写,如:MyName
9.4 匈牙利命名法:以变量类型的缩写开头,如:vMyName
10. 变量声明提升
10.1 可以提前使用一个稍后才声明的变量,而不会引发异常,如:
// 先使用变量
console.log(a);
// 后定义变量
var a = 0;
10.2 变量声明提升时,只提升变量的定义,不会提升它的值
10.3 注意事项
- 变量声明的提升是JavaScript的特性,所以经常出面试题
- 在实际开发时,一定要先定义并给变量赋初值,然后再使用变量