do-while循环与while循环的区别
do-while先执行语句,然后再判断条件,无论条件成功与否总会先执行一次语句。
while循环先判断条件,再执行语句。
通俗易懂的讲解:①当你去参加一个聚会,到聚会的酒店之后,你先推开一个门进去,发现屋内的人不是自己的朋友,你再出来,推门的次数可以看作do-while中的执行语句,屋内的人员即为判断的条件。②当你进门之前看一下门牌号是否为自己要找的,如果是则推门进去,否则不进,同样推门近可以看作while的执行语句,门牌号为判断条件。
continue 与 break 之区别:
continue 只退出一次循环,紧接着执行下一次循环
break 退出整个循环,不在执行循环语句,直接执行循环外的下一个语句。
Javascript的属性介绍:
src:指引入外部js文件的路径
async:属性表示异步执行,当外部文件加载完之后就开始执行,不管当前页面是否执行完
defer:属性表示延迟,将外部js文件延迟到最后,只有当前页面执行完之后才执行外部文件
控制台打印输出时,均会将其他进制数的值转换为对应的八进制的值来输出。
javascript判断数据类型的函数:
typeof(变量)用来检测变量的数据类型;
javascript的数据类型包括两种:基本数据类型和复杂数据类型
(1)基本数据类型:
1.1数值型:number
1.2字符型:string ------->使用单引号或者双引号包含的
字符串的特性:不可变性,指的是在内存中的不可变性;即如果给字符变量重新赋值时,将会在栈内存中重新开辟一个新的空间,该变量的地址指向新开辟的字符空间。因此,当大量拼接字符串,会消耗很多的内存
1.3布尔类型:boolean --------->只有true 和false两种类型
""、0、null、undefined 的布尔类型均为false
1.4未定义类型:undefined -------->只声明,没有定义的变量
1.5空类型:null ------->用于清清空变量
(2)复杂数据类型
object复杂数据类型,又称为引用数据类型,复杂数据存放方式数据存放在堆内存中,栈内存中存放的是对应数据的地址,如果改变变量中的数据的话,但是变量的地址不发生改变,改变的只是对应的数据值。
基本数据类型的相互转换:
(1)转换为字符类型
1.1显示转换方法:直接使用toString()函数进行转换
例如:var num = 3; num.toString();则num则转换为了字符类型
注意:null 和 undefined 两种类型没有toString()方法的调用。
1.2通用的字符类型转换方法String();
方法使用同toString();所用的数据类型均可以通过String()来进行转换为字符类型。
1.3 隐式转换方法:在对应的变量后面直接加上一个空字符串即可
例如:var num=3 ; var a = num + " " ; 则a 即转换为了对应的字符类型
(2)转换为数据类型:
1.1 使用Number()函数,只能将只包含数据类型的字符换转换为数值型
parseInt()可以将以数值开头的字符串中的数值提取出来,转换为对应的数值整数型
parseFlaot()可以将数值开头的字符串中的数值类型的数据转换为对应的数值型(浮点类型)
1.2 隐式转换 jiang对应的字符串直接减 0
例如:var str = "123" ; var num =str - 0 ;则str 为string类型,num为number类型
(3)转换为布尔类型Boolean()
3.1显示转换 直接使用Boolean ()函数来转换,当在选择、循环语句中的判断条件都将转换为布尔型的
常见的转换为布尔值为false的数据类型有:""(空字符串),0和NaN,null ,undefined
3.2隐式转换,直接在变量前添加两个!!
逻辑运算:
1.&&且云算符的返回值类型
当两者都是true时,这个语句为true,则返回的是后面对象对应的值;当前者为false时,整个语句都为false,则返回值为前面对象对应的值
2.||或运算符
当有一个对象为真时,则整个语句均为真;当前者对象为真时则不需要判断后面对象的真假,整个语句为真,返回值为前面对象对应的值;当前面对象为假时,继续判断后面的对象,无论后面对象是真是假,则返回值均为后面对象对应的值。