"
目录
#. 概述
1. ECMAScript与JavaScript的关系
2. ECMAScript版本历史
3. 简单总结
#. 用法
1. 引入方式
2. 规范
3. 变量声明
#. 数据类型
1. 数值(Number)
2. 字符串(String)
3. 布尔值(Boolean)
4. null与undefined
5. 数组
6. 类型查询(typeof)
7. 运算符
#. 流程控制
1. if-else
2. if-else if-else
3. switch
4. for
5. while
6. 三元运算
#. 概述
1. ECMAScript与JavaScript的关系
1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECMA,希望这门语言能够成为国际标准。次年,ECMA发布262号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为ECMAScript,这个版本就是1.0版。
该标准一开始就是针对JavaScript语言制定的,但是没有称其为JavaScript,有两个方面的原因。一是商标,JavaScript本身已被Netscape注册为商标。二是想体现这门语言的制定者是ECMA,而不是Netscape,这样有利于保证这门语言的开发性和中立性。
因此ECMAScript与JavaScript的关系是:前者是后者的规格,后者是前者的一种实现。
2. ECMAScript版本历史
年份 | 名称 | 描述 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1997 | ECMAScript 1 | 第一个版本 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1998 | ECMAScript 2 | 版本变更 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1999 | ECMAScript 3 |
添加正则表达式
3. 简单总结尽管ECMAScript 是一个重要的标准,但它并不是 JavaScript 唯一的部分,当然也不是唯一被标准化的部分。实际上,一个完整的 JavaScript 实现是由以下 3 个不同部分组成的:
简单地说,ECMAScript描述了JavaScript语言本身的相关内容.
#. 用法 JavaScript中一切皆对象:字符串、数值、数组、函数... 1. 引入方式1. 将JS代码写在script标签内: script标签一般写在head标签内,但也可写在body内部.
2. 引入.JS文件:
2. 规范1. 注释(注释是代码之母)
2. 结束符 JavaScript中的语句要以分号 " ; " 为结束符:
3. 变量声明
注意:
ES6新增了let命令,用于声明变量,其用法类似于var,但是所声明的变量只在let命令所在的代码块内有效.
ES6新增了const命令,用来声明变量。一旦声明,其值便不可被更改:
保留字段 #. 数据类型JavaScript拥有动态数据类型:
1. 数值(Number)JavaScript不区分整数型和浮点型,就只有一种数字类型:
还有一种NaN,表示不是一个数字(Not a Number):
NaN属性是代表非数字值的特殊值,该属性用于指示某个值不是数字. 2. 字符串(String)
常用方法:
ES6中引入了模版字符串(template string),模版字符串是增强版的字符串,用反引号 " ` " 标示。
注意:如果模版字符串中需要使用反引号,则要在其前面用反斜杠转译. JSHint启用ES6语法支持: /* jshint esversion:6 */ 3. 布尔值(Boolean)布尔值有true、false之分;true为真,false为假。空字符串、0、null、undefined、NaN都为false. 4. null与undefined
null表示变量的值为空,undefined表示只声明了变量,但还没有赋值. 5. 数组使用单独的变量名来存储一系列的值:
sort()方法详述: 如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。 若按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字:
关于for遍历数组:
ForEach的正确姿势:
map的正确姿势:
补充: ES6新引入了一种原始数据类型(Symbol),表示独一无二的值。它是JavaScript语言中的第七种数据类型. 6. 类型查询(typeof)typeof是一元运算符(就像++、--、!、- 等一元运算符),不是方法,也不是函数. 对变量或值调用typeof运算符将返回下列值之一:
7. 运算符1. 算数运算符:+ - * / % ++ -- 2. 比较运算符:> >= < <= != == === !== "=="只比较值,"==="会比较值和值的内存地址:
3. 逻辑运算符:&& || ! 4. 赋值运算符:= += -= *= /= #. 流程控制 1. if-else
2. if-else if-else
3. switch
switch中的case子句通常都会加break语句,否则程序会继续执行后续case中的语句. 4. for
5. while
6. 三元运算
" |