AJAX Day02

发布于 20 天前  10 次阅读


1.复习内容

2.灵感代办

  • http头的值

3.学习内容

  • 1.使用Ajax发送POST请求

    • 1.创建xhr

    • 2.创建请求

      • 1.将请求方式更改为post
    • 2.如果有请求参数不能拼在url之后
  • 3.设置回调函数

    • 4.设置请求消息头

    • javascript
      xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
    • 5.发送请求

      • xhr.send("name=value&name1=value1");

2.JSON

  • 1.介绍JSON

    • JSON:JavaScript Object Notation
             JS         对象   表现方式
          以JS对象的格式来约束前后端交互的字符串数据

  • 2.JSO - JS对象

    • var obj = {
                  uname:"wangwc",
                  uage:30,
                  ugender:"男"
      }

  • 3.JSON规范

    • 1.使用JSON表示单个对象

      • 使用 {} 表示一个对象
        在{}中使用 key:value 来表示属性(数据)
        key必须使用 "" 引起来
        value如果是字符串的话,也必须使用""引起来       
        多对 key:value 之间使用 , 分隔

      2.使用JSON表示一组对象

      • 使用 [] 表示一组对象
        示例:
      • var users = '[{"uname":"wangwc","uage":30},{"uname":"weimz","uage":40}]';

    4.前端中处理JSON

    • var js对象 = JSON.parse(JSON串);

    5.后端中处理JSON

    1. 在Python中的处理

      1. 允许将 元组,列表,字典 转换成JSON串
      2. 元组,列表,字典中可以是字符串也可以是元组,列表和字典
      3. python中提供了json模块,json模块中提供dumps方法实现JSON串的转换
    2. 在Django中的处理

      • Django中提供的序列化类来完成QuerySet到JSON字符串的转换
      • from django.core import serializers
        str = serializers.serialize('json',QuerySet)
        return HttpResponse(str)

4.扩展延伸知识

  • Ajax异步可能遇到的问题

    • 异步回调函数执行比较慢,可能先return值,才执行回调,导致返回的值跟预期不符合
  • JavaScript预编译

    • 1.创建AO对象
    • 2.将变量名提取,值为undefined
    • 3.实参形参值相统一(传递实参的值赋值给形参)
    • 4.将函数定义的名字作为变量名,值为函数体
    • 注意:var fun = function(){} 定义的相当于变量
    • 函数的预编译会影响函数使用,变量是在执行时候才赋值
    • var a = 123 //执行到这句话,才执行
      function a(){}
      consolo.log(a) //123

  • javascript 模板字符串

  • Jquery转换对象

    • 将js可以转为jq,用$(js对象)
    • jquery的循环比js的循环更好用
    • $(arr).each(function(i,obj){
          //i是下标
        //obj是数组里面的元素
      })

  • 查看英文缩写

5.知识内容个人梳理

6.今天都复习了之前的什么内容


Ares个人进阶之路