【嘉兴东臣PHP】JS、Jquery、Ajax学习总结

又到了一周一总结的时候,这个礼拜,总体来说感觉自己上课的时候有点不怎么在状态。上课时偶尔会神游个一小会!不过回想起来,这个礼拜的收获还是蛮大的,因为接触了很多新东西,比如自己动手写贪吃蛇的游戏、闭包、Ajax。然后也努力的试着去运用他们!因为代码的熟练程度不够,所以在接下来的这段时间内打算拿到任务时,先用注释写好思路,然后将注释转换为代码!

自我评价

好处:收获还是蛮多的,上课老黄讲的知识点也能较快的理解。

不足:实际运用操作时较生疏,不能很好的运用!代码单词老是会打错,从而导致不能运行。缺少练习!要多练要多练要多练要多练


闭包

1、闭包:其实就是一个函数使用另一个函数的变量

2、闭包特点:1、嵌套函数2、外部函数的变量可以被内部函数使用。3、垃圾回收机制

3、闭包优点和缺点:

优点:模块化思想,不会造成全局污染(基本没有全局变量)。

缺点:最大的缺点就是变量不会被回收!因为这个变量,被函数一直使用着。

4、匿名函数:所谓的匿名函数,就是没有具体名称的函数,如:

(function(i){

alert( i );

})( 10 );

后面的()可以看做调用前面的表达式或函数,当然()中可以传入参数,给前面的表达式或函数进行运算。

1、基本的写法:尽量包含全局变量

优点:快!代码量稍微少。

缺点:全局污染严重!

2、作用域的写法尽量把变量放在局部。

优点:代码污染小。

缺点:局部的变量无法再其他函数中使用。理解困难,代码量稍微大。

3、闭包的写法尽量把变量放在局部且嵌套使用。

优点:函数内部都可以使用。污染小。

缺点:内存较大!

补充:

  • 为什么全局变量会造成污染?

1、如果变量名重复的话,很容易造成覆盖

2、从内存的角度上看,全局变量不容易被释放。

  • 在JS中,变量什么时候被释放?

1、在JS中,一旦某个函数调用完毕,那么这个函数内部的变量全部被释放。

2、在JS中,就算某个函数调用完毕,这个全局变量也不见得会被释放,因为可能还有下一个函数。


JQuery

1、JQuery:是一个 JavaScript 库,极大地简化了 JavaScript 编程。

使用方法:可以通过下面的标记把 jQuery 添加到网页中,如:<script type="text/javascript" scr="jquery文件"></script>【注意:使用jquery必须在引用jquery文件后面。】

2、jquery,使用$()来表示对象,有三大选择器

     1、 $("#xxx") ID选择器

     2、$(".xxx") Class选择器

     3、$("input") 标签选择器

注:几个常用的jquery案例:

    //input 标签点击事件
    $("input").click( function(){
    });

3、动画函数:

        1、show 显示

        2、hidden 隐藏

        3、toggle 显示和隐藏

        4、fadeIn 淡入

        5、fadeOut 淡出

        6、fadeToggle 淡入和淡出

        7、slideUp 向上滑动

        8、slideDown 向下滑动

        9、animate("执行的动画操作",时间,可选(回调函数)  如:   $("").animate({"height":"300px;"}, 1500);【  注意:加入position属性!】

        10、stop 停止动画

        参数一:clearQueue:如果设置成true,则清空队列。可以立即结束动画。

        参数二:jumpToEnd:如果设置成true,则完成队列。可以立即完成动画。

如:stop(true, true);

注意:

函数里面都可以加入时间参数,单位为毫秒,函数里面都可以加入回调callback参数。

如:    show( 1000, function(){

        //回调所执行的函数

    });


4 、window.onload 必须等待网页中的所有内容加载完后(包括图片)后才能执行 , 后

    $(document).ready 网页中的所有DOM结构绘制完毕后就执行,可能DOM元素关联的东西并没有加载完 ,先
5、
bind() ,绑定事件。如:$(".abc").bind("click",function(){     });

unbind() 解绑事件。
$(".abc").unbind();//如果unbind内部没有加入参数的话,移除所有的事件
$(".abc").unbind("click")//如果unbind内部加了参数的话,移除就是当前参数的事件。


Jquery Dom:

1、节点:
        1、parent() 找到父节点
        2、children() find() 找到子节点【注意:children 默认不加参数的时候为找第一个节点,加了找参数里的节点。如children("div.select")就是找div里的select的class类。find,一般用于找子节点的某个元素标签,如:find("div");】
        3、next() prev() 找到下一个节点 找到上一个节点
         4、siblings 找到并获取所有的兄弟节点       
        5、eq(索引)找到元素中的某个索引,注意是从0开始的。
        6、get(索引)匹配元素中的某个索引,注意不返回元素。
        7、first() 通过自定义的找到,找到第一个元素。如:$(".a").first();就是找到class为a的第一个元素。
        8、last() 同上,不过找到的是最后一个元素。
        9、append() 追加HTML内容
        10、appendTo() 把所有匹配的元素追加到另一个指定的元素元素集合中。
        11、remove() 删除所有匹配的元素及文本。
        12、empty() 删除所有文本,但是不会删除匹配搭配的元素
        13、attr() 设置属性 、返回属性

jQuery Ajxa

1、AJAX 是与服务器交换数据的艺术,它在不重载全部页面的情况下,实现了对部分网页的更新。

2、AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML)。简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据,并在网页上进行显示。就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事.就像早上起床后,先洗涮,然后才能吃饭,不能在洗涮没有完成时,就开始吃饭.
    异步:和同步相对。发出一个异步指令以后,可以不用去管它的执行情况,完成后服务端会自动告诉你结果。3、XML和JSON的区别:
XML为一种数据传输格式:
    <rows>
        <abc>1</abc>
        <bd>2</bd>
    </rows>

JSON也为一种数据传输格式:
{"row":["abc":1 , "bc":2]}
Jquery Ajax 比原生ajax封装更加良好。
4、提供了主要五种的解决方法:
.load()
    通过载入一个远程页面,用来放入到某个Dom中。
    load 默认会返回2个参数,第一个是load页面的内容,第二个参数是返回状态 success为成功
.get()
    通过Get请求方式,请求数据。
.getJson()
    通过Get请求方式,请求数据并返回的是json数据文件,注意请求json文件!
 .post()
    通过Post请求方式,请求数据。
.ajax()
    通过自定义请求方式,请求数据。
    $.ajax({
    url: "http://120.26.196.152/come.php",//URL    
   dataType: "json", //数据格式
   async: true, //是否为异步
   data: { "name": "ajax","age":"20" },    //参数值
   type: "GET",   //请求方式     
   success: function(req) {//请求成功时处理
            console.log( req );
            $("#message").text( req.name + "-" + req.age );
    },
    error: function(req){ //请求错误的时候的处理  
    }
    });

转载于:https://my.oschina.net/9979187/blog/551583

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值