函数

1、什么是函数?
    函数就是一个方法,就是一个工具(随时取用,可重复利用,不必知道内部结构)
2、函数如何创建
    1.关键字创建:function 函数名(){ }
    2.字面量创建:1,匿名函数:var 变量名= function(){ }
                          2,命名函数:var 变量名 = function 函数名(){ }
   3.构造函数创建: var 变量名 = new Function(第一参数是变量,第二个参数是执行代码)
3、函数执行方式?
    自调用 函数名()
    通过事件来执行函数
    立即执行函数:;(function(){ })()注意:执行前面加分号或者运算符
4、常见的一些事件类型:
    鼠标事件:onclick(单机) dbclick(双击) onmousedown (鼠标按下)  onmouseup(鼠标抬起) onmousemove(鼠标i移动) onmouseover(鼠标移入) onmoueout(鼠标移除) oumousewheel(鼠标滚动)
    键盘事件:onkeydown(键盘按下) onkeyup(键盘抬起) onkeypress(键盘按下) 
    输入框事件:onfocus(获取焦点) onblur(失去焦点) onchange(当输入框发生变化并失去焦点的时候) oninput(当输入框发生变化的时候) onsubmit(提交)
5、什么是参数?
    形参:初始化的变量名,一个虚拟的参数
    参数:调用的时候真实的数据   
    注意点:形参和实参要一一对应,如果传了形参,实参没有传递,那么对应的参数就是undefined
6、return 
    return将函数内部的结果返回出去
    return 只返回一个值
    return完毕以后,后面的代码就不执行了
    如果想拿到函数内部的返回值必须在外面声明一个变量接受这个值
7、arguments:当形参个数不一定时就可以用arguments代替 应用时只需要在[ ]里面写上对应
8、如何看一个对象里面自带的功能
    console.dir(对象名)
    [ 对象名]
9、js作用域:
    全局作用域:在函数外部起作用的范围
    局部作用域:在函数内部起作用的范围
     注意:如果函数内部还有函数进行嵌套,子函数可以访问父函数的变量
               在函数内部如果没有加var去声明的话,那么就是全局变量
               如果函数内部没有加return的话,那么返回值就是undefined,因为函数执行完毕以后就自动被销毁掉了
10、作用域链:(作用域的集合)
        注意:如果变量名重复冲突的时候后者会覆盖掉前者
                  不管写变量还是函数名的时候一定要见名知意
                  变量名不要跟函数名起冲突
11、js的变量声明与提升
        js在执行过程会进行预编译和执行
        预编译:js的变量声明提升:js把代码用关键字var 声明的变量名以及关键字函数都提升到script的最顶端,而值不会进行提升。会在原地等着被赋值,函数的优先级比变量的高
                                                如果函数内部的变量在外面进行了使用那么这个函数就会被销毁
                     当局部作用域内变量声明也会提升
12、递归函数:
        递归的用法:函数自身调用   必须有一个终止条件  找规律
13、构造函数:
        创建一个对象(只有对象才能用 object,name)
        给这个对象添加属性和方法
        一般构造函数的首字母都是大写
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
posted @ 2017-11-06 23:57  W同学  阅读(258)  评论(0编辑  收藏  举报