1、变量提升
变量提升是浏览器的一个功能,在运行js代码之前,浏览器会给js一个全局作用域,叫window,
window分为两个模块,一个叫做内存模块,一个叫做运行模块,内存模块找到当前作用域下的
所有带var和function的关键字,执行代码执行js代码,从上到下执行,遇到变量就会通过内存地址
去查找这个变量,有和没有这个变量,有这个变量就会看赋没赋值,如果赋值就是后面的值,如果没有赋值
就是undefined,如果没有找到这个变量,就是这个变量is not defined
2、条件语句
if(条件){
语句1
}else{
语句2
}
{}在js中我们把它叫做代码块,如果带代码块里的内容没有执行完,语句不会向下执行,代码块是一个独立的整体
如果js中的某一条语句出错,那么就会在此中止,不会向下执行
3、循环语句
循环:就是对一个整体逐个查找
循环(注意三个问题):
(1)从什么时候开始
(2)查找的步长
(3)结尾数字
❤计算机对数据的计算不是从1开始,而是从0开始,也就是说,0代表第一个数据,我们把
用数字代替字节的诶办法,讲数字叫做这个字节的下标(索引)
❤循环语句的格式:for(){}
for (var i=1;i<5;i++){
var 声明这个变量
i=1;开始位置
i<5;判断条件
console.log()执行代码
i++递增
console.log()
}
console.log(i)
i=null;
我们最后发现i=5,但是i应该是for循环的额代码块中的变量,但for循环之外也可以使用,我们把这种现象叫做内存泄露
需要清理内存,我们在使用完模块之后加一个:i=null;
❤JS处理数据的目的就是将数据渲染到页面中,而渲染得数据的本质是字符串,其他数据的底层都是字符串
学习到最后,都是在处理数据,渲染数据最本质的方法是字符串的拼接,后期的数据渲染得方式都是用字符串衍变而成的
4、+加号的使用
+ 字符串的拼接
变量和字符串之间都需要使用+进行连接
❤案例一:求1-10之间的和
var sum=0;
for(var i=1;i<=10;i++){
sum=sum=1
}
console.log(sum)
❤弹出框的三种方式
1、alert()警告框
2、输入框 prompt()
3、确认框confirm()
案例2、找出1-100之间既能被5又能被6整除的数字
for(var i=1;i<=100;i++){
if(i%5==0&&i%6==0){
console.log(i)
}
} 穷举法
我们把这种一个一个列举出来的方法叫做穷举法
案例3:如何取到375中的百位数、十位数、个位数
// var a=prompt("请输入。。。")
var a=375
var bai=a/100;
var b=parseInt(bai);
var s=parseint((a-b*100)/100)
var g=a-b*100-s*10
document.write("百位数字"+b+"十位数字是"+s+"个位数是"+g)
❤if条件的种类 if(条件){}
遇见这样的东西,我们要考虑m是不是有值,布尔值
var m;
if(m){→m是不是null
console.log("xixi")
}
if里面的条件(1)m=true
(2)m和null的关系
布尔中的true和false我们可以用数字代替,false为0,true为1...
if(m)我们可以说,如果m是true。如果m是非0
❤ var m=5,n=5; (=在js中为赋值,从右往左执行)
if(m==n){
console("hahah")
}
❤逻辑运算
var m=5,n=6;
if(m>4||n>7){
console.log("hahahh")
}
if(m>4&&n>7){
console.log("xixixi")
}
var s=false;
if(!s){
console.log("hehehh")
}