首页
学习
活动
专区
圈层
工具
发布

JavaScript 回调函数

函数实际上是对象:它们能被“存储”在变量中,能作为函数参数被传递,能在函数中被创建,能从函数中返回; 回调函数 回调函数就是一个参数,将这个函数作为参数传到另一个函数里面,当那个函数执行完之后,再执行传进去的这个函数...回调,回调,不直接调用而是回头调用的意思。主函数的事先干完,回头再调用传进来的那个函数。刚开始看过很多博客,他们总是将回调函数解释的云里雾里,很高深的样子。...看到这里,聪明的你会不会发现ajax的success 不就是一个回调函数吗,我每天都在用ajax,为什么不懂什么是回调呢? 回调就是为了确保在网络请求耗时的情况下保证我们的代码执行有顺序的执行。...高级使用 //封装一个满足多次调用的方法 function loadData(callback, param){ $.ajax({ type : "GET", url...console.log(data); } function loadPage(){ //获取所有用户,假设id为空或者不传id就是查所有的用户 let param1 = {id: ""}; loadData

3.7K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Ajax第二节

    获取响应内容 参数提取 参数名 参数类型 描述 传值 默认值 type string 请求方式 get/post 只要不传post,就是get url string 请求地址 接口地址 如果不传地址,不发送请求...false:true; 完整版本 // 封装 ajax // 目的: 发送 get 或者 post 请求 // 参数: // type: 不传post, 就按get处理 // url: 必须传 // async...: 不传false, 就按true处理 // data: 参数对象 // dataType: 数据类型, json/xml/text // success: 成功的回调函数 // error: 失败的回调函数...方法 jQuery为我们提供了更强大的Ajax封装 $.ajax 参数列表 参数名称 描述 取值 示例 url 接口地址 url:"02.php" type 请求方式 get/post type:"get...为什么要使用模板引擎 我们通过ajax获取到数据后,需要把数据渲染到页面,在学习模板引擎前,我们的做法是大量的拼接字符串,对于结构简单的页面,这么做还行 但是如果页面结构很复杂,使用拼串的话代码可阅读性非常的差

    4K50

    【Go 语言社区】js开发积累

    因为没有类,类就是使用函数进行模拟实现其他语言类的方式 2.JS中的所有function都是一样的,但是用途可能是不同的(用作构造对象抑或是执行一个过程)。 使用new就是将函数模拟成类进行使用。...所有就无法像其他语言一样,可以使用extends实现类继承。js的call和apply方法可以实现继承的功能 概念总结: js将所有东西都看成是对象。函数是对象的一种形式。函数也看成是一种变量。...在一本ajax_IBM书中就提到: onreadystatechange=updatePage;//这里使用updatePage就可以完成对函数updatePage()进行调用。...这就意味着,可以用变量引用任何东西。JavaScript 也将该函数名看作是一个变量。 关于弱类型语言的整体思考: php也是一门弱类型的语言。在调用类的时候。类名大小写是没关系的。...比如,类名是Page,而使用 new page也是能够生效的。联想到在php手册中提到一个意思,大致是:函数名不区分大小写的。也就是调用函数的时候,大小写之间的区别是不会影响使用的。

    1.2K70

    04_PHP基础——变量命名规则和预定义变量及可变变量

    变量命名规则 1、 在PHP中变量名字必须以“$”符号开始; 2、 名字由字母、数字和下划线“_”构成,但是不能以数字开头; 3、 在PHP中本身还允许中文变量(不建议)。 ?...:GET和POST提交的都会保存 $GLOBALS:PHP中所有的全局变量 $_SERVER:服务器信息 $_SESSION:session会话数据 $_COOKIE:cookie会话数据 $_ENV:...变量传值 将一个变量赋值给另外一个变量:变量传值 变量传值一共有两种方式:值传递,引用传递 值传递:将变量保存的值赋值一份,然后将新的值给另外一个变量保存(两个变量没有关系) ?...引用传递:将变量保存的值所在的内存地址,传递给另外一个变量:两个变量指向同一块内存空间(两个变量是同一个值) $新变量 = &$老变量; ?...在内存中,通常有以下几个分区 栈区:程序可以操作的内存部分(不存数据,运行程序代码),少但是快 代码段:存储程序的内存部分(不执行) 数据段:存储普通数据(全局区和静态区) 堆区:存储复杂数据,

    2.4K20

    前端面试题ajax_前端性能优化面试题

    等请求完,页面不刷新,新内容也会出现,用户看到新内容 3,如何解决跨域问题?...8,请解释 JSONP 的工作原理,以及它为什么不是真正的 AJAX。 jsonp的工作原理是,动态的创建了一个全局方法,并且动态生成script标签,将script标签的src属性变为(接口地址?...这里的同源指的是:同协议,同域名和同端口 10,为什么要有同源限制?...(6)使用JavaScript和DOM实现局部刷新. var xmlHttp = new XMLHttpRequest(); xmlHttp.open('GET','demo.php','true...GET方式需要使用Request.QueryString来取得变量的值,而POST方式通过Request.Form来获取变量的值,也就是说Get是通过地址栏来传值,而Post是通过提交表单来传值。

    3.1K10

    php变量与JS变量实现不通过跳转直接交互的方法

    本文实例讲述了php变量与JS变量实现不通过跳转直接交互的方法。...分享给大家供大家参考,具体如下: 大家都知道如果JS变量要获取后台传来的php变量可以这么写/【当下浏览的服务器和开发工具是哪些】/: php $aaa = '111';?...>; 那么我们如何将js变量的值直接付给php变量呢 第一种方法也是最常见的方法: 无刷新:使用ajax传参 有刷新:直接跟表单一起提交或者直接跟在跳转链接的后面。...现在我来说一下第二种传值方式: 示例为对js变量进行日期处理: $c = "document.write(leaderTask_info['end_time']);";...echo formatTime($c);//leaderTask_info['end_time']是js变量 /** 将截止时间秒数转换为日期制 */ function formatTime($date

    2.1K20

    谨慎使用全局变量

    其中接口3的请求参数依赖接口1和接口2的响应参数,接口1和接口2的返回数据会展示到前端,然后调用接口3时将从接口1和接口2的返回参数中拿数据传递给接口3,然后将接口3返回的数据展示,到此页面初始化加载完成...看到这也许你就能想明白为什么说谨慎使用全局变量了,这个问题正是因为全局变量的使用不当导致的。 原因分析 我们来一起分析下到底是如何导致的吧。...看到这,你是不是觉得这有点像java的多线程共享变量?多线程共享变量也会引发这样的问题,当一个线程正在使用某一变量时,突然被别的线程修改了,导致该线程拿到了脏数据。...其实解决起来也简单,正如标题所说[谨慎使用全局变量],问题的根源就是使用了全局共享变量,导致在A线程还没走完时C线程修改了 biz_type 的值,从而导致线程A的三个步骤拿到的 biz_type 的值不相同...切记能传参的尽量不要用全局变量。 出问题不可怕,在问题中成长,积累经验,才是最重要的。

    1.4K30

    ajax的几个面试题「建议收藏」

    使用 XML 和 XSLT 进行数据交换及相关操作; 使用 XMLHttpRequest 进行异步数据查询、检索; 使用 JavaScript 将所有的东西绑定在一起。...二、为什么要用ajax: Ajax应用程序的优势在于: 1. 通过异步模式,提升了用户体验 2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 3....Ajax可以实现动态不刷新(局部刷新) 就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。...(post通过请求体传参,后台通过数据流接收。速度稍微慢一些。...//ajax 取得数据是json字符串需要转换成json对象才可以使用。

    64520

    ASP.Net开发基础温故知新学习笔记

    ①浏览器发出访问请求→②服务器处理访问请求并返回HTML→③浏览器解析HTML并显示页面   (3)GET与POST的区别:(★★★→重点)     ①GET通过URL传值,而POST通过HTTP报文;...中的$时把$当做NVelocity中的特殊符号,应对方法是使用jQuery.ajax代替$.ajax;       如果要将DataTable传递给NVelocity时仅传递DataTable.Rows...Application.Lock();//同步,避免同时写入 11 Application["count"]=(int)Application["count"]+1;//每建立一个会话该全局变量加...  (4)AJAX核心对象:JavaScript对象XMLHttpRequest XmlHttpRequest使我们可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。...①除了_samples、_source、*.php、*.asp都放到js/ckeditor文件夹下;      ②页面中引用ckeditor.js;      ③页面编辑器的位置使用textarea,在页面

    3K10

    bwapp sql部分

    order by 尝试可知,能试到7, 使用联合查询试一下,可以,然后就开始查库,查表,查列 SQL Injection (POST/Search) 使用了post传参而已 解决方法和get一样 SQL...比如我们使用百度的时候,有个功能叫“搜索预测”,当你输入第一个字的时候,下拉框里就会出现大量可能的关键词候选,这个用的就是ajax技术,而它的返回值一般是json/xml格式的,jQuery中提供实现ajax...的方法(因为js很容易捕捉客户端的按键行为) 抓包推断输入的a是get传参方法,但 URL为sqli_10-2.php?...title=a但是实际浏览器看到的页面是,sqli_10-1.php,观察源代码发现 sqli_10-1.php将参数通过getJSON方法传给sqli_10-2.php,sqli_10-2....本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    2.1K20

    深入浅出玩转php一句话(含过waf新姿势)

    php的代码要写在php ?>里面,服务器才能认出来这是php代码,然后才去解析。 @符号的意思是不报错。 例如: 如果没有@,如下图,就会报错 为什么呢?...因为一个变量没有定义,就被拿去使用了, 服务器就善意的提醒:Notice,你的xxx变量没有定义。 这不就暴露了密码吗? 所以加上@为什么pw是密码呢?...> 结果: 连起来意思就是: 用post方法接收变量pw,把变量pw里面的字符串当做php代码来执行 所以也就能这么玩: 也就是说,你想执行什么代码,就把什么代码放进变量pw里,用post传输给一句话木马...技术,每隔几秒钟发一次信息,时刻保持联系 若要学习ajax,推荐百度一下:w3c菜鸟学院 这里说明一下,为什么要用ajax做这个脚本呢 本人并不希望大家直接把代码拷回去直接用,思路已经详细给出了...,不告知路径 攻:……..

    1K40

    php与Ajax实例

    当你发送HTTP请求,你不希望浏览器挂起并等待服务器的响应,取而代之的是,你希望通过页面继续响应用户的界面交互,并在服务器响应真正到达后处理它们。...使用Get方式 现在我们第一步来执行一个Get请求,加入我们需要获取 /show.php?id=1的数据,那么我们应该怎么做呢? 假设有一个链接:php?...= ajax.responseText; } } //发送空 ajax.send(null); } 那么当,当用户点击“新闻1”这个链接的时候,在下面对应的层将显示获取的内容,而且页面没有任何刷新...这种方式适应于页面中任何元素,包括表单等等,其实在应用中,对表单的操作是比较多的,针对表单,更多使用的是POST方式,这个下面将讲述。 3...."; //需要POST的值,把每个变量都通过&来联接 var postStr = "user_name="+ userName +"&user_age="+ userAge +"&user_sex="

    4.1K10

    番外特别篇之 为什么我不建议你直接使用UIImage传值?--从一个诡异的相册九图连读崩溃bug谈起

    不行,我得去看看.一行一行,看代码,从天黑到天亮,从期待到绝望...其实,稍微有一些对比实验常识的人,都很容易猜到: 两种情况,唯一的变量是 图片素材本身,那 最可能 的原因肯定是 图片本身的问题.一种高大上的说法...resultHandler: 替换 requestImageForAsset:targetSize:contentMode:options:resultHandler: 就可以了,前者是直接返回二进制数据,不渲染...imageWithData:兼容原来的调用 为了和原来的Api接口调用兼容,用imageWithData:将NSData转换为 UIImage 传出,同时扩展方法,使支持同时传出 UIImage和原始的...无法直接以UIImage格式,连续在轮播图上显示九张图 此处对应的是一个本地大图预览功能,实现是在前一个页面把九张本地图的UIImage传递给轮播预览组件.此处的坑是: 把一个存放在 数组中的UIImage...我真没想到,一个UIImage对象,竟然会二次引起高内存占用.最终的解决方法,就是在前一个页面传递 NSData数组,在赋值处,再使用imageWithData:转换为 UIImage.这样,内存使用基本没什么起伏

    2.2K70

    vue中的ajax_创建vue实例

    VUE vue本身不支持发送AJAX请求,需要使用vue-resource、axios等插件实现 axios是一个基于Promise的HTTP请求客户端,用来发送请求,也是vue2.0官方推荐的,同时不再对...: 1.通过url传参 2.通过params选项传参 Getsend() { axios.get('server.php', { params: { name: 'tom',...传参方式: 1.自己拼接为键值对 2.使用transformRequest,在请求发送前将请求数据进行转换 3.如果使用模块化开发,可以使用qs模块进行转换 vue-resource(支持发送跨域的请求...) 使用this....本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    1.3K20

    Java的传值调用

    num传递给change()方法,change()方法接收到后将值改变为20。...值传递:基本类型的变量在被传递给方法时,传递的是该变量的值(即复制自己的值传递给方法)。 引用传递:引用类型的变量在被传递给方法时, 传递的是该变量的引用(即自己所指向的内存地址)。...传值调用(Call by value) “传值调用”求值是最常见的求值策略,C和Scheme这样差异巨大的语言都在使用。...如果我们想表达引用类型传递的是引用,仅仅是想说传的是引用不是别的东西的话,我们可以说的明确点:引用类型传的是引用,和程序语言中的求值策略不沾边 。...FORTRAN II 是一种早期的传引用调用语言。一些语言如C++、PHP、Visual Basic .NET、C#和REALbasic默认使用传值调用,但是提供一种传引用的特别语法。

    4.5K20
    领券