ECMAScript
概念:
客户端脚本语言的标准
- 基本语法
- 与html的结合方式
- 内部js
标签体内容就是js代码 - 外部js
通过src属性引入外部的js文件
注意- 可以定义在html页面的任意位置,但是定义的位置会影响执行顺序
- 标签可以定义多个
- 内部js
- 注释
- 单行注释://注释内容
- 多行注释:/* 注释内容*/
- 数据类型
- 原始数据类型(基本数据类型)
- number
数字:整数、小数、NaN(not a number 一个不是数字的数字类型) - string
字符串:字符串 “abc ” “a”‘a’ - boolean
true和false - null
一个对象为空的占位符 - undefined
未定义:如果一个变量没有给初始化值,则会被默认赋值为undefined。
- number
- 引用数据类型 :对象
- 原始数据类型(基本数据类型)
- 变量
概念
一小块存储数据的内存空间
java语言是强类型语言,而javaScript是弱类型语言
强类型:在开辟变量存储空间时,定义了空间将来存储的数据的数据类型。只能存储固定类型的数据。
弱类型:在开辟变量存储空间时,不定义空间将来存储的数据的数据类型。可以存储任意类型的数据。
语法
var 变量名=初始化的值 - 运算符
- 一元运算符:只有一个运算数的运算符
如:++、–、+(正号)
++、–(自增、自减)
++、–在前,先自增(自减),再运算
++、–在后,先运算,再自增(自减) - 算术运算符
如:+、-、*、/、%。。 - 赋值运算符
如:=、+=、-+。。。 - 比较运算符
如:>、<、>=、<=、、=(全等于)
比较方式:
1. 类型相同:直接比较
字符串:按照字典顺序进行比较。按位逐一比较,直到得出大小为止
2. 类型不同:先进行类型转换,在比较
===:全等于。在比较之前先判断类型,如果类型不一样,则直接返回false - 逻辑运算符
如:&&、||、!
其他类型转boolean
1. number:0或NaN为假,其他为真
2. string:除了空字符串(""),其他都是true
3. null&undefined:都是false
4. 对象:所有对象都为true - 三元运算符
如:a?b:c
语法
表达式?值1:值2
判断表达式的值,如果是true为值1,如果是false为值2
例如
var a=6;
var b=7;
document.write((a>b?1:0)+"
");
- 一元运算符:只有一个运算数的运算符
- 流程控制语句
- if。。。else。。。
- switch
在java中,switch语句可以接受的数据类型
byte
int
shor
char
枚举
string
switch(变量): case值:
在js中,switch语句可以接受任意的原始数据类型 - while
- do。。。while
- for
- js特殊语法
1.语句以;结尾,如果一行只有一条语句则可以省略(不建议)
2.变量的定义使用var关键字,也可以不使用(不建议使用)
用:定义的变量是局部变量
不用:定义的变量是全局变量 - 练习
- 与html的结合方式
<style>
td{
border: 1px solid black;
}
</style>
<script>
document.write("<table align='center'>");
//1. 完成基本的循环嵌套,展示乘法表
for (var i=1;i<=9;i++){
for (var j=1;j<=i;j++){
document.write("<td>");
//输出1*1=1
document.write("  "+i+"*"+j+"="+(i*j)+"    ");
document.write("</td>");
}
//输出换行
// document.write("<br/>");
document.write("</tr>");
}
//2. 完成表格的嵌套
document.write("<table/>")
</script>