1. 输入输出语法
1.1. 输出语句
- 向body标签当中插入内容,固定格式如下:
document.write("") //括号当中用引号引起来,单引号双引号均可。可以识别html标签
document.write("<h1>这是内容</h1>")
- alert()弹出框或警告框
// 在script标签当中可以直接使用
alert("这是内容")//内容部分使用引号引起来,单引号双引号均可。不能识别html标签
- console.logI()在控制台输出。
console.log("控制台打印的内容") //将内容打印在控制台当中,单引号双引号均可。常用于调试
1.2. 输入语句
- prompt()显示对话框,用于用户输入。
prompt("请输入内容") //括号当中,使用单引号或双引号,将提示给用户的内容包裹,接收到的内容是字符串类型
2. 变量
2.1. 声明变量的关键字
var //声明一个变量
let //声明一个变量
const //声明一个常量,必须进行初始化,初始化过后的变量不可以再进行更改
2.2.声明变量
//语法:关键字 变量名
// 此语法只是将数据进行声明,但并没有初始化
let name
var age
const sex
2.3. 变量赋值
// 语法:关键字 变量名 = 值
// =就是用来给变量进行赋值的,关键字即var/let/const,值可以是任何数据类型
// 给变量进行赋值之后,变量就初始化了
let name = "张三"
var age = 12
const sex = "女" //值不可以再进行更改
更新变量,直接给变量重新赋值即可
let name = "张三"
name = "李四"
2.4.通过变量来获得变量中得数据
let name = "张三"
console.log(name) //注意,打印变量名时不需要再使用引号将变量名包裹
2.5.变量名的命名
2.5.1.不能使用关键字和保留字
-
关键字

-
保留字

2.5.2.只能使用下划线、字母、数字、$组成,且不能以数字开头
let 123 = 1 // 错误的不能用数字开头作为变成的名字
let top-tab = 1 // 只能使用_和$
2.5.3.区分大小写
let test = 1
let Test = 2
console.log(test, Test) //在这里Test与test是两个不同的变量
3.数据类型
3.1.string字符串
语法:使用单引号(‘’)或双引号(“”)或反引号(``)引用起来的就是字符串
注意事项:
- 无论使用哪种引号必须成对出现
- 单引号或双引号可以互相嵌套,如果外面是单引号里面就使用双引号,如果外面是双引号里面就是单引号
- 可以使用转义字符()进行转义
console.log(‘你好, ‘金小子’’) // 报错
console.log(‘hello, ‘金小子’’) // 当看到了\就不会把\后面的字符进行编译了而是原模原样的输出了 结>果就是:hello, ‘金小子’
let name = “张三”
//注意:虽然此时count这个变量赋值的内容是1234,但是使用引号引起来的,那么此时1234是一个字符串而不是数字
let count = ‘1234’
加号(+)运算符可以实现字符串的拼接
console.log(1 + 2) // 3 如果是数字类型那么就会进行相加的操作
console.log('熊大' + '熊二') //"熊大熊二" 如果是字符串那么就会将字符串进行拼接
console.log("1"+"2")//12 注意:此时内容就成了1和2两个字符串进行拼接,而不是做相加操作
超级字符串
超级字符串又叫模板字符串,使用反引号(``)结合${变量名}实现
let name = '金小子'
let age = 18
console.log(`我叫${name},今年我${age}岁了!`)
3.2.number类型
语法:直接写数字,不使用引号包裹的就是数字类型
let num1 = 1
let num2 = 1.23
3.2.1.算数运算符
数字当中有很多操作,如+加(求和)、-减(求差)、*乘(乘积)、/除(求商)、%取余(又叫取模)等
console.log(1 + 1) // 2
console.log(1 - 1) // 0
console.log(1 * 1) // 1
console.log(1 / 1) // 1
console.log(7 % 2) // 1
运算规则:先乘除后加减,有括号的先算括号里的
3.3. boolean
布尔值,有两个固定的值true(真)和false(假)
let isFlag = true
console.log(isFlag)
3.4. undefined
undefined表示未定义【已经声明变量但是没有初始化】
使用typeof检测undefined时,返回值为undefined
3.5. null
null表示空值,注意null仅代表空值,并不是不存在
let name = null
console.log(name)
3.6. symbol
symbol表示独一无二的值,最大的用法就是用来定义对象的唯一属性名
3.7. bigint
bigint可以安全的存储和操作大整数,甚至可以超过数字的安全整数限制。
数组
//数组的声明方式
let arr = []//字面量表示法
let arr = new Array()//构造函数表示法
数组可以通过索引对数组中的元素进行增删改查,如果访问的索引超过了已有的索引,那么会返回undefined,如果访问的索引小于已有的索引,那么会将超出的索引对应的元素删除掉。
数据类型转换
分类
● 隐式转换
● 显示转换
隐式转换:
● +两边只要有一个时字符串,就会把另一个也转成字符串
● 除了+以外的算术运算符,比如-、*、/、%都会把类型转换成数据类型
显示转换
● Number( ):转换为数字类型=>(Number(变量名))
● parseInt( ):转为数字,但是只保留整数部分的数字=>(parseInt(变量名))
● parseFloat( ):转为数字,可以保留小数部分=>(parseFloat(变量名))
运算符
赋值运算符
对变量或常量进行赋值的运算符叫做赋值运算符
用法:将等号右边的值赋予左边的变量
常用赋值运算符:
● =
● +=:sum+=i等同于sum=sum+i
● -=:sum-=i等同于sum=sum-i
● =:sum=i等同于sum=sum*i
● /=:sum/=i等同于sum=sum/i
● %=:sum%=i等同于sum=sum%i
一元运算符
常见一元运算符:
:大于号
<:小于号
+:正号
-:负号
自增运算符
++i:前置自增运算符:先自增1然后再参与运算
–i:前置自减运算符:先自减1然后再参与运算
i++:后置自增运算符:先参与运算然后再自增1
i–:后置自减运算符:先参与运算然后自减1
比较运算符
返回值:boolean类型
常见比较运算符
>:左边大于右边
<:左边小于右边
>=:左边大于等于右边
<=:左边小于等于右边
==:相等:数值相等
===:全等:数值和数据类型完全相等
!==:左右两边的值和类型是否都不相等
逻辑运算符
&&:逻辑与,一假则假
||:逻辑或,一真则真
!:逻辑非,!true则false,!false则true
三目运算符
条件?符合条件执行:不符合条件执行
运算符优先级
4.三大流程控制语句
顺序、分支、循环
4.1顺序
按照代码的常规顺序自上向下执行
分支
- 单分支
- 双分支
- 多分支
单分支
if(条件){条件满足时执行的代码块
}
双分支
if(条件){条件满足时执行
}else{条件不满足执行
}
多分支
if(条件1){满足条件1执行
}else if(条件2){满足条件2执行
}else if(条件3){满足条件3执行
}else{条件1,2,3都不满足时执行
}
switch(数据){case 值1:代码1break;case 值2:代码2break;case 值3:代码3break;default:以上都不满足时执行break;
}
循环
while循环
while(条件){循环体
}
执行思路:
- 先执行条件表达式,如果结果为 true,则执行循环体代码;如果为 false,则退出循环,执行后面代码
- 执行循环体代码
- 循环体代码执行完毕后,程序会继续判断执行条件表达式,如条件仍为true,则会继续执行循环体,直到循环条件为 false 时,整个循环过程才会结束
for循环
for(变量初始值; 循环终止条件; 变量变化值;) {// 循环体
}
for(let i = 0; i < 5; i++) {console.log(i)
}
let i = 0
while(条件判断) {循环体自增的变量
}
退出循环
for (let i = 0; i < 5; i++) {if (i === 3) continue // continue后续的代码不执行所以不会输出3console.log(i)
}
for (let i = 0; i < 5; i++) {if (i === 3) break // break跳出循环,后续都不执行console.log(i)
}
