一、函数
作用域分为: 全局作用域、函数作用域(局部作用域)
变量的作用域:全局作用域中的变量、函数作用域中的变量(局部变量)
函数的作用域:全局作用域中的函数、函数作用域中的函数(局部函数)
二、ES预定义的全局函数
下述函数已由ES标准预定义好了,直接使用即可:
(1)parseInt()
(2)parseFloat()
(3)isNaN()
(4)isFinite() 返回true/false,判定给定的参数是否为“有限大的值”
(5)eval() 接收一个字符串,把该字符串作为js代码来解析并执行
(6)encodeURI() 对一个URI字符串进行编码,将其中的空格、中文等特殊符号进行编码——因为URI规范中不允许出现上述特殊字符
(7)decodeURI() 对使用encodeURI()编码后的字符串进行解码,返回原始的字符串
(8)encodeURIComponent() 对一个URI字符串进行编码,将其中的空格、中文、标点符号等特殊符号进行编码
(9)decodeURIComponent() 对使用encodeURIComponent()编码后的字符串进行解码,返回原始的字符串
三、程序逻辑结构
任何程序最终都由三种基本的结构组成:
(1)顺序执行
(2)选择执行
(3)循环执行
四、选择分支结构
(1) if( ){
}
(2) if( ){
}else{
1.if...else...中的自动类型转换
严格来说,if()必须是一个boolean表达式;
但js是弱类型语言,可以把其它类型的值自动转换为boolean
自动转换为false:0、NaN、’’、null、undefined
自动转换为true:123、-123、Infinity、’ab’、’0’、’ ’、....
2.循环结构——while——10%——重点
3.循环结构——do..while——5%——重点
4.循环结构——for——80%——重点
for( 表达式1; 表达式2; 表达式3 ){
//循环主体
}
(1)式1执行且仅执行一次,在循环刚一开始时执行——常用于定义循环变量
(2)式2每次执行循环体之前都要进行判定,若为false,则退出循环;若为true,则执行循环体
(3)式3每次执行完循环体之后都立即执行——常用于执行变量的改变语句
总结:
if( 布尔表达式 ){
//主体,执行 0/1 遍
}
===========================
while( 布尔表达式 ){
//主体,执行 0~N 遍
}
===========================
do{
//主体,执行 1~N 遍
}while( 布尔表达式 );
===========================
for( 式1; 式2; 式3){
//主体,执行 0~N 遍
}