JS逻辑结构
顺序结构
循环结构 for while do-while ps:break用于跳出代码块,continue用于终止本次循环
选择结构 if-else switch ps:switch语句内每个case下的break不能少,否则顺序执行case代码块
JS函数概念
函数是一段可以反复调用的代码块。作用在程序设计中,常将一些常用的功能模块编写成函数,
以减少重复编写程序段的工作量。 提高代码的复用性、可读性等
JS函数的创建方式(函数的声明)
function 函数名称() {函数中要执行的代码;}
除了用function命令声明函数,还可以采用变量赋值的写法。
var print = function() { console.log(1);};
这种写法将一个匿名函数(没有名字的函数)赋值给变量。这时,这个匿名函数又称函数表达式
JS函数的执行
函数定义好之后,函数中的代码在程序运行过程中不会执行;
通过函数名称调用函数,调用时执行函数中的代码;调用函数时,要使用圆括号运算符。print();
函数的返回值
JavaScript 引擎遇到return语句,就直接返回return后面的那个表达式的值,后面即使还有语句,也不会得到执行。
也就是说,return语句所带的那个表达式,就是函数的返回值。
注、return语句不是必需的,如果没有的话,该函数就不返回任何值,或者说返回undefined。
变量的声明提升
函数内部会产生“变量提升”现象。在函数内部使用var命令声明的变量,不管在什么位置,变量声明都会被提升到函数体的头部。
函数的作用域
作用域(scope)指的是变量存在的范围。
在 ES5 的规范中,Javascript 只有两种作用域:
一种是全局作用域,变量在整个程序中一直存在,所有地方都可以读取;
另一种是函数作用域,变量只在函数内部存在。
函数外部声明的变量就是全局变量(global variable)
在函数内部定义的(使用var)变量,外部无法读取,顾称为“局部变量”(local variable)
函数内部定义的变量,会在该作用域内覆盖同名全局变量。(山高皇帝远,县官不如现管)
注意,对于var命令来说,局部变量只能在函数内部声明,在其他区块中声明,一律都是全局变量。
JS事件的概念及方法
事件:就是发生的事情
事件驱动:就是发生了某件事情之后要处理的手段和过程
鼠标事件 | |
onclick | 鼠标单击 |
ondblclick | 鼠标双击 |
onmousedown | 鼠标按键按下 |
onmouseup | 鼠标按键抬起 |
onmousemove | 鼠标在元素上移动 |
onmouseout | 鼠标移出 |
Onmouseenter | 鼠标移入 |
键盘事件 | |
Onkeydown | 键盘按键按下 |
Onkeyup | 键盘按键抬起 |
onkeypress | 键盘按键按住 |
表单事件 | |
Onblur | 失去焦点 |
Onfocus | 获取焦点 |
Onchange | 内容修改 |