js的书写位置
内部js
alert('hello world');
外部js
<script src="./js/me.js"></script>
注意:外部js文件中间不允许写代码
行内js
注释分为两种:
单行注释// ctrl+/
多行注释/**/ shift+alt+/
快捷方式ctrl+/
js的输出方式
//给age定义一个值
let age=20;
//弹出框
alert("我是弹出框");
//在界面上输出
document.write("我是输出页面")//在js中分号可写可不写
console.log('控制台输出')
在js中输入标题
document.write('<h1>我是标签</h1>')
变量
语法 let 变量名
let age;
声明多个变量
let age=18,uname='rk'
变量重新赋值
let age=18
age=19
//现在age被重新赋值为19
常量
1,不允许更改值
2,常量声明时必须赋值
数据类型一共有6种
分为两大类:基本数据类型,引用数据类型
基本数据类型:
数值
let age=8
let number=2.22
字符串
//被双引号或单引号包括起来的是字符串类型
let name="qwert";
模板字符串:外面返引号,里面$加一个大括号
let age = 20
document.write(`我今年${age}岁了`)
布尔值
//布尔类型由0或1组成,0flag,1true
let flag=true;
let flags=false;
对象
特殊值
null
let hello=null
//空值
undefined
let hello =undefined
//空值
typeof:判断数据类型
let age=20;
console.log(typeof age);
//打印数来number
typeof 返回值
数值 number
字符 string
布尔 boolean
对象 object
typeof返回object的有很多情况,不准确
一般不会用typeof去判断 null 和 undefined
null 和 undefined的区别
null一般表示对象没有
undefined一般表示数值没有
算术运算符
加法 减法 乘法 除法 余数 自增 自减
+ - * / % ++ --
案例
let a =100;
let b =10;
//加
console.log(a+b);
//减
console.log(a-b);
//乘
console.log(a*b);
//除
console.log(a/b);
//取余.... 就是取a/b的余数
console.log(a%b);
//递增和递减就是原有的基础上加一或者减一
console.log(++a);//相当于a+1,在控制台输出101
注意:自增和自减有两种写法,++a a++
++在前先自增在运算 ++在后先运算后自增
赋值运算符
运算符 表达式
= 赋值运算符
+= x+=y等同于x=x+y
-= x-y=y等同于x=x-y
*= x*y=y等同于x=x*y
/= x/=y等同于x=x/y
%= x%=y等同于x=x%y
比较运算符
< 小于运算符
> 大于运算符
>= 大于或等于运算符
<= 小于或等于运算符
== 相等运算符
=== 严格相等运算符
!= 相等运算符
!=== 严格不相等运算符
案列
判断a是否大于b
let a=10;
let b=20;
console.log(a>b);
//a不大于b所以返回false
console.log(a<b);
//a小于b返回true
==号和===的区别
===严格比较,数值本身是否相同。类型本身是否相同
let a="10";
let b=10;
console.log(a == b);//返回true
console.log(a === b);//返回false
let a="10";
let b=10;
console.log(a != b);//返回false
console.log(a !== b);//返回true
布尔运算符
取反运算符:! 且运算符:&& 或运算符:||
取反运算符
let a =true;
console.log(!a)//返回false
注意:非布尔值取反首先转换为布尔值然后取反
undefined null false 0 NaN 空字符串("")为真。其余的都为假
console.log(!null);
console.log(!0);
console.log(!NaN);
console.log(!false);
console.log(!{"");
console.log(!undefined);
//以上返回值均为true其他的均为FALSE
且运算符(&&)
全为真为真,一假为假
console.log(100>10 && 100>200)//返回false
console.lpg(100>10 && 100>50)//返回值为true
或运算(||)
一个为真就为真
console.log(100>10 || 100>200)//结果为true
条件语句
if 语句
if(布尔值){//如果布尔值为true则执行语句,否则不执行
语句;
}
注意:布尔值用比较运算符
if else 语句
布尔表达式为true执行语句1,否则执行语句2
if(a==3){
//满足条件时执行
}else{
//不满足条件执行
}
多个if else 可以在一起使用,但是使用swich语句会更加方便,下面就来看一下switch知识点吧
条件语句switch
switch(条件){
case "1":
//'''''''
break;
case "2":
break;
default:
}
let day=1;
switch(day)
{
case 1:
console.log("今天星期一");//由于day的值是一所以最终在控制台输出“今天星期一”
break;
case 2:
console.log("今天星期二");
break;
case 3:
console.log("今天星期三");
break;
default;//这个就是以上的条件都不满足
}
三元运算符
(条件)?表达式1:表达式2
三元运算符适用于if else 的简写,当条件为true时执行表达式1,否则执行表达式2
循环语句for
for语句就是循环命令,他有循环的起点,终点和终止条件
for(初始化表达式;条件;迭代因子){
语句
}
初始化表达式:确定循环变量的初始值,只在循环开始时执行一次。
布尔表达式:只要这个表达式为true就会一直执行
迭代因子:每轮循环的最后一个操作,通常用来递增循环变量。
案列打印1到100
for(let i=1;i<=100;i++){
console.log(i);
}