prompt();//浏览器输入弹出框,可向里面输入内容
alert();//弹出警示框
console.log();//控制台输出
定义:变量适用于存放数据的容器,通过变量名获取数据,甚至可以修改数据
变量的使用:
1.声明变量:例:var age;
2.赋值:例:age=18;
3.输出结果: 例:console.log(age);
4.变量的初始化:例:var age = 18;
console.log(age);
变量语法拓展
1.更新变量:变量被重新赋值后,原有的值将会被覆盖,以最后一次赋的值为准。
2.同时声明多个变量
var age = 18, address = '中国', color = 'pink';
3.只声明不赋值 会输出undefined
4.不声明不赋值 会报错
5.不声明只赋值 可以输出结果 但不建议这样使用
变量命名规范
1.由字母,数字,下划线,美元符号组成
2.严格区分大小写
3.不能以数字开头
4.不能是关键字、保留字 例如:var、for、while
5.变量名必须有意义
6.遵循驼峰命名法。首字母小写,后面的单词的首字母均大写。
变量的数据类型是由 JS引擎 根据 右边变量值的数据类型来判断的,运行之后,变量就确定了数据类型。变量的数据类型是可以变化的。
简单(基本)数据类型:
数字型Number
1.数字型进制 在js中八进制前面加0,十六进制前面加0x。
2.三个特殊值 Infinity(无穷大) -Infinity(无穷小) NaN(非数字)
3. isNaN() 变量是否为一个数字 是为false 不是为true
字符串型String
1.字符串嵌套(外双内单 外单内双)
2.字符串转义字符 以反斜杠 \ 开头 其中\n表示换行 \t表示空格
3.字符串长度
检测字符串长度:length
字符串拼接:+
布尔型Boolean
1. 布尔类型参与加法运算时 true代表1 false代表0
2.如果一个变量未赋值 输出就是undefined。undefined+字符串输出为字符串 undefined+数字则输出NaN。
3.null 空值
获取变量数据类型:typeof
例如:var num = 10;
console.log(typeof num);
prompt 取过来的值 数据类型字符型!!
数据类型转换
1.数字型转化为字符串型 toString()
例:
var num = 10;
var str = num.toString();
console.log(str);
String(变量)
即:console.log(String(num));
利用 + 拼接字符串的方法实现转换效果
即:console.log(num + ' ');
2.转化为数字型
parseInt(变量) 可以把 字符串类型转化为数字型 但得到的是整数
parseFloat(变量) 可以把 字符串类型转化为数字型 但得到的是小数 浮点数
Number(变量) 强制转换
利用算术运算 + - * / 隐式转换
3.转换为布尔型
Boolean()函数
代表空、否定的值会被转换为false,如:''、0、NaN、null、undefined
其余值都会被转换成true
标识符、关键字、保留字
1.标识符 指开发人员为变量、属性、函数、参数取的名字
2.关键字 js本身已经使用的字
3.保留字 现在还不是关键字 以后可能是关键字
运算符
算术运算符 + - * / % (避免使用浮点数运算,否则会产生精度问题,所以不能拿两个浮点数进行比较)
表达式
由数字、运算符、变量组成的式子
递增运算符和递减运算符
前置递增运算符:++写在变量前面 先自加1,后返回值
后置递增运算符 ++写在变量后面 先返回原值,后自加1
比较运算符(返回值为布尔值)
< > >= <= != ==(会把字符串型转化成数字型) ===(全等,一摸一样)
逻辑运算符(返回值为布尔值)
&&(与) ||(或) !(非)
短路运算(逻辑中断):当有多个表达式(值)时,左边的表达式可以确定结果时,就不再继续运算右边表达式的值
逻辑与短路运算
表达式1结果为真,则返回表达式2;
表达式1结果为假,则返回表达式1;
逻辑或短路运算
表达式1结果为真,则返回表达式1;
表达式1结果为假,则返回表达式2;
赋值运算符
= 直接赋值
+= -= 加减一个数后赋值
*= /= %= 乘、除、取模后在赋值
运算符的优先级
小括号 一元运算符 算数运算符 关系运算符 相等运算符 逻辑运算符 赋值运算符 逗号运算符
流程控制有三种结构,即 顺序结构、分支结构、循环结构
分支语句:
if 语句
if(条件表达式){
// 执行语句
}
执行思路:条件表达式为true,则执行大括号里的执行语句;若条件表达式为false,则执行if语句后面的代码。
if else 语句
if(条件表达式){
// 执行语句1
}else{
//执行语句2
}
if else if 语句
if(条件表达式1){
// 执行语句1;
}else if(条件表达式2){
// 执行语句2;
}else if(条件表达式3){
// 执行语句3;
}else{
// 最后的语句;
}
三元表达式
语句结构: 条件表达式 ? 表达式1 : 表达式2
执行思路:如果条件表达式的值为真,则返回表达式1 的值;如果条件表达式的值为假,则返回表达式2的值。
switch 语句
switch(表达式){
case value1:
执行语句1;
break;
case value1:
执行语句2;
break;
case value1:
执行语句3;
break;
...
default:
执行最后的语句;
}
循环的目的:可以重复执行某些代码;
for 循环:
for(初始化变量; 条件表达式; 操作表达式){
//循环体;
}
初始化变量:用var声明的一个普通变量,通常用于作为计数器使用
条件表达式:用来决定每一次循环是否继续执行 就是终止的条件
操作表达式:每次循环最后执行的代码 经常用于我们计数器变量进行更新(递增或递减)
1. 双重for循环 语句结构:
for(外层的初始化变量; 外层的条件表达式; 外层的操作表达式){
for(内层的初始化变量; 内层的条件表达式; 内层的操作表达式){
//执行语句;
}
}
2. 我们可以把里面的循环看作外层循环的语句
3.外层循环一次,内层循环执行全部
//打印倒三角
var str = '';
for(i=5;i>=1&&i<=5;i--){
for(j=1;j<=i;j++){
str = str + "*";
}
str = str + "\n";
}
console.log(str);
console.log("-------------------------");
//打印正三角形
var str = '';
for(var i=1;i<=5;i++){
for(var j=1;j<=i;j++){
str = str + "*";
}
str = str + "\n";
}
console.log(str);
while循环:当条件表达式为true 则执行循环体 否则退出循环
while(条件表达式){
//循环体
}
do while 循环:先执行一次循环体,在判断条件
do{
//循环体
}while(条件表达式)
continue 关键字:退出当前循环,继续执行剩余次数循环
break 关键字:退出整个循环。