day05-JS运行和编译

1.    JS运行和编译

        1.1 语法分析 :查找基本语法有没有错误

        1.2 预解析:执行之前进行预解析

            var、function关键字提前到当前作用域的顶部,变量默认值为undefined,函数默认值为 函数体代码块,当函数与变量重名时,保留函数。

        1.3 解释执行

2.    变量生命周期

    2.1 全局变量的生命周期直至浏览器卸载页面才会结束。

    2.2 局部变量只在函数的执行过程中存在,而在这个过程中会为局部变量在栈或堆上分配相应的空间,以存储它们的值,然后再函数中使用这些变量,直至函数结束

3.事件

    3.1 事件类型

        3.1.1 鼠标事件:click,dbclick,mousedown,mouseup,mouseover,mouseout,mouseenter、mouseleave、mousemove

                scroll    mousewheel    鼠标滚轮

                contextmenu  鼠标右键(上下文菜单:在不同环境下右键菜单不一样)

                mouseover:鼠标在元素身上移动穿过子元素的时候会被反复触发

                mouseenter:只是在进入元素的时候触发

        3.1.2 键盘事件:keydown(按下不放手),keyup(已按下松手),keypress(按下加松手)

        3.1.3 表单事件:对表单元素操作之后会触发的事件

            单选框、多选框、下拉菜单 状态改变的时候会触发  onchange 事件

            表单提交的时候会触发 onsubmit触发在

元素身上

            onfocus  获取焦点时的事件

            onblur  失去焦点时的事件

你可能感兴趣的:(day05-JS运行和编译)