基本语法内容大纲
数据结构
数据类型
变量
运算符
词法规则
- 大小写敏感
- 忽略空格、换行和制表符
- 3.每个语句以;结束。语句块用{…}
- 注释
1)注释是给开发人员看到,JavaScript引擎会自动忽略
2)//:行注释
3)/…/:把多行字符包裹起来,把一大块视为一个注释。
注意点:HTML不区分大小写
标识符:用于表示变量、函数名等名称,应遵循以下规则: - 第一个字符必须是字母、下划线(_)或美元符号($)
- 后面的字符可以是下划线、美元符号、英文字母或数字字符
- 不能使用JavaScript中的关键字和保留字
- 要尽量要做到“见其名知其意”
值得一提:
当标识符中需要多个单词进行表示时,常见的表示方式有下划线(如user_name)、驼峰式(如userName)和帕斯卡法(如UserName)。可根据开发需求统一规范命名的方式,如:下划线方式通常应用于变量的命名,驼峰法通常应用于函数名的命名等。
常用输出语句
alert():警告框
console.log():控制台输出
document.write():文件页面输出
1、常量
- 当程序运行时,值不能改变的量为常量(Constant)。
- 常量主要用于为程序提供固定的和精确的值(包括数值和字符串),比如数字、逻辑值真(true)、逻辑值假(false)等都是常量。
- ES6新增const关键字声明常量,一般用全大写字母命名。
- 词法:const常量名=值;
var r=6;
const PI=3.14;
const P=2*PI*r;//输出结果:P=37.68
console.log('P='+P);
2、变量使用
- 未赋初始值的变量,默认值会被设定为undefined.
- 行末的分号表示语句结束。
- 变量与变量之间的逗号(,)操作符,可实现一条语句同时完成多个变量的声明。
3、变量的赋值 - 先声明变量再赋值
var width;
width=5;
- 同时声明和赋值变量
var width=5;
- 不声明直接赋值
width=5;
4、变量的命名规范
- 应有描述性,让别人一眼就能辨识名称的意义
- 驼峰式,大小写混合的形式
- 变量的第一个词全都小写,后续的词则首字母大写
- 变量名称不可以使用空格
5、变量的作用域
变量分为:全局变量和局部变量
6、数据类型
JavaScript数据类型有:
- 基本数据类型
- 复合数据类型
- undefined
- null
- number
- boolean
- string
7、数值类型
- 最基本的数据类型
- 不区分整型数值和浮点型数值
- 所有数字都采用64位浮点格式存储,相当于Java和C语言中的double格式
- 能表示的最大值:±1.797693148623157*10^308
- 能表示的最小值:±5*10^-324
8、NaN非数值
- NaN是一个全局对象的属性,它的初始值就是NaN.
- 与数值型中的特殊值NaN一样,都表示非数字(Not a Number)
- 可用于表示某个数据是否属于数值型
- NaN没有一个确切的值,仅表示非数值型的一个范围
9、undefined类型
- 该类型只有一个值,即特殊的undefined
- 在使用var声明变量但未对其加以初始化时,这个变量的值就是undefined.
- 对于尚未声明的变量,可以使用typeof操作符检测其数据类型。返回值也为undefined值。和定义后未赋初值的变量一样。
10、Null类型
- null值表示一个空对象
- 如果定义的变量准备将来用于保存对象,那么最好将该变量初始化为null而不是其他值。
比较 | 结果 |
---|---|
null与空字符串 | 不相等,null代表什么也没有,空字符串则代表一个为空的字符串 |
null与false | 不相等,但是!null等于true |
null与0 | 不相等,但是在C++等其他语言中是相等的 |
null与undefined | 相等,但是null与undefined并不相同 |
11、String对象
- String类型数据称为字符串,是用双引号(“”)或单引号(‘’)括起来的Unicode字符序列
- 属性:
字符串对象.length - 方法:
字符串对象.方法名()
12、数据类型转换
-
转布尔型
-
转数值型
-
转字符型
类型转换总结
-
默认转换规则
-
数字 + 字符串:数字转换为字符串
-
数字+布尔值: true转换为1.false转换为0
-
字符型+布尔值:布尔值转换为字符串true或false
-
强制转换规则
-
parseInt:强制转换成整数,paraeInt(“a12”)=NaN
-
parseInt:强制转换成浮点数,paraeInt(“6.12”)=6.12
-
eval:将字符串强制转换为表达式并返回结果,eval(“1+1”)=2
13、运算符
-
加法的应用
加法不只能用在数字上 -
JavaScript中,上下文(context)就是一切
-
上下文对于在代码中操纵何种数据尤显重要
-
比如:两段信息的加法
1+2=3
“1”+“2”=? -
运算符注意点
JavaScript将非Boolean转换为Boolean的规则 -
所有对象都被认为是true
-
字符串当且仅当为空时被认为是false
-
null和undefined被认为是false
-
数字当且仅当为零时被认为是false
小常识
2==“2” //true
2===“2” // false
4!=“4” //false
4!==“4” //true
-
typeof运算符
typeof检测变量的返回值
typeof运算符返回值 -
undefined:变量被声明后,但未被赋值
-
string:用单引号或双引号来声明字符串
-
boolean:true或false
-
number:整数或浮点数
-
object:JavaScript中的对象、数组和null