1. ECMAScript的语法大量借鉴了C及其他类C语言的语法。
2. ECMAScript中的一切(变量、函数名和操作符)都区分大小写。
3. 按照惯例,ECMAScript标识符采用驼峰大小写格式。
所谓标识符,就是指变量、函数、属性的名字,或者函数的参数。
标识符可以是按照下列格式规则组合起来的一或多个字符:
- 第一个字符必须是一个字母、下划线( _ )或一个美元符号($);
- 其他字符可以是字母、下划线、美元符号($)或数字。
- 数据类型(6种)
ECMAScript中有5种简单数据类型(也称为基本数据类型)和1种复杂数据类型(Object)。
基本数据类型:Number、Boolean、String、Undefined、Null
- typeof操作符
- 值未定义----undefined
- 布尔值----boolean
- 字符串----string
- 数值-----number
- 对象/null----object
- 函数----function
6.parseInt()和parseFloat()注意事项
- parseInt()可以识别出各种整数格式(十进制,八进制,十六进制)。
可以有第二个参数:转换时使用的基数(即多少进制)。例:parseInt("AF",16)- parseFloat()只解析十进制值,因此它没有用第二个参数指定基数的用法。
- 字符串的特点
- 字符串一旦创建,他们的值就不能改变。
- 要改变某个变量保存的字符串,首先要销毁原来的字符串,然后再用另一个包含新值的字符串填充该变量。
例:
var lang="java";
lang = lang + 'Script'; // javaScript
实现这个操作的过程如下:首先创建一个能容纳10个字符的新字符串,然后在这个字符串中填充“java”和“script”,最后一步是销毁原来的字符串“java”和字符串“Script”。
- 转换为字符串
要把一个值转换为字符串有两种方式。
- toString()
数值、布尔值、对象和字符串值都有该方法。
但null和undefined值没有这个方法。
调用toString()方法是可以传递一个参数:输出数值的基数。(默认为10进制)
- String()
该函数遵循的转换规则:
1.如果值有toString()方法,则调用该方法并返回相应的结果;
2.如果值为null,则返回"null";
3.如果值为undefined,则返回"undefined"。
- 语句
if语句、do while语句、while语句、for语句、for in语句(可以用来枚举对象的属性)等
with语句
例:
var qs = location.search.substring(1);
var hostName = location.hostName;
var url = location.href;
with(location){
var qs = search.substring(1);
var hostName = hostName;
var url = href;
}
- 函数
- 函数会在执行完return语句之后停止并立即退出。因此,位于return语句之后的任何代码都永远不会执行。
- return语句也可以不带有任何返回值。在这种情况下,函数在停止执行后将返回undefined值。
- 理解参数
1.ECMAScript中的参数在内部是用一个数组来表示的。
2.所以函数不介意传递进来多少个参数,也不在乎传进来参数是什么数据类型。
3.没有传递值的命名参数将自动被赋予undefined值。
4.实际上在函数体内可以通过 arguments对象 来访问这个参数数组,从而获取传递给函数的每一个参数。
11.++和--
后置自增、自减与前置自增、自减的最大区别
后置自增、自减操作是在包含它们的语句被求值之后才执行
let num1 = 2;
let num2 = 20;
let num3 = num1-- + num2; // 22
let num4 = num1 + num2; // 21