美文网首页
匿名函数,异步和同步,回调函数,闭包定义总结

匿名函数,异步和同步,回调函数,闭包定义总结

作者: 却忘不掉你心言 | 来源:发表于2018-07-02 21:57 被阅读0次

    一,匿名函数

    没有名字的函数就是匿名函数

    function (){}

    1)var f = function(){}  调用:f();

    2)var con = document.getElementById('con');

    con.onclick = function(){}

    3)IIFE即时调用函数

    普通函数是对象,即时调用函数其实是将普通函数降级生成的

    降级方式:1)-function(){}()

    2)+function(){}()

    3)(function(){})()

    匿名函数的好处:

    变量封闭,私有保护,不对外开放,减少对全局变量的污染

    二,异步和同步

    1,json

    组织形式:

    var json = {

    "key":"value",

    "sex":"男"

    }

    増:

    json.age = 23;

    json["age"] = 23;

    删:

    delete json.sex;

    delete json["sex"];

    改:

    json.age++;//让其自增一

    json["age"] = 38;

    查:

    json.name;

    json["name"];

    json嵌套:

    var j = {

    "name":"=lisi",

    "obj":{

    "age":23,

    "sex":"男"

    }

    }

    j.obj.age;

    j["obj"]["age"];

    json遍历:

    for in 遍历

    for(var k in j){

    //k:每一个键值对的键

    //j[k]:每一个键值对的值

    }

    2,同步

    从上到下依次执行,就是同步

    程序中使用同步的地方很多,就是排队执行,上边没有执行完,下边必须等待

    eg:

    alert()

    for语句

    3,异步

    当遇到耗时操作,系统不会等待,直接执行后边的语句

    常见的异步:

    setInterval

    setTimeout

    ajax  Node.js

    如果有异步语句就一定是异步操作

    如果没有异步语句,那就不是异步操作

    三,回调函数

    一般用在异步中,当异步事情做完了,还想继续做点事,需要使用回调函数

    四,闭包

    变量: 作用域  全局变量和局部变量

    直白的说:函数内部能调用外部的变量,函数外部不能调用函数内部的变量

    函数:能形成作用域,函数内部声明的变量在外部不能调用

    函数闭包:一个函数可以把他自己内部的语句和自己声明时所处的环境(作用域),一起封装成一个密闭的环境,称之为闭包

    每一个函数都是闭包形态,都能够天生记忆自己的语句和自己声明时所处的环境,但是我们需要将这个闭包放在特殊地方才能更好的观察闭包

    特殊的地方:当前作用域以外的地方

    闭包其实就是让变量在不同作用域之间调用

    闭包的性质:

    1,闭包用于处理隐患,不是加以利用的性质

    2,每一次调用闭包都是访问一个全新的闭包,都会访问闭包中的全部变量

    相关文章

      网友评论

          本文标题:匿名函数,异步和同步,回调函数,闭包定义总结

          本文链接:https://www.haomeiwen.com/subject/yndruftx.html