您当前的位置: 首页 >  前端

黑马蓝汐

暂无认证

  • 3浏览

    0关注

    89博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

前端-jQuery基础知识(三)

黑马蓝汐 发布时间:2022-01-01 09:03:27 ,浏览量:3

每日分享:

坚持不下去的时候,给自己一个最大的拥抱。

目录:

  1. 自定义JavaScript
  2. json数据格式介绍
  3. ajax
一、自定义JavaScript

JavaScript中的所有事物都是对象:字符串、数值、数组、函数等都可以认为是对象,且JavaScript中运行自定义对象,对象可以拥有属性和方法

创建自定义JavaScript对象有两种方法:

  • 通过顶级Object类型来实例化一个对象
  • 通过对象字面量创建一个对象

代码示例:




    
    
    
    Document
    
        // 自定义JavaScript对象有两种方式

        // 1. 使用顶级类型Object创建自定义的对象
        var oPerson = new Object();
        // 添加属性
        oPerson.name = '张三';
        oPerson.age = 10;
        // 添加方法
        oPerson.show = function(){
            alert('我是方法');
        };
        // 通过对象获取属性和调用方法
        alert(oPerson.name);
        oPerson.show();

        // 2. 使用字面量创建自定义的对象
        var oStudent = {
            // 属性
            name: '李四',
            age: 20,
            // 方法
            show: function(){
                alert('我是方法');
            }
        }
        // 通过对象获取属性和调用方法
        alert(oStudent.name + oStudent.age);
        oStudent.show();
    


    

调用属性和方法的操作都是通过 ‘点’ 语法的方式来完成的,创建对象建议使用字面量方法,更简单

二、json数据格式介绍

json是JavaScript Object Notation(JavaScript对象表示法)的首字母缩写,json就是类似于JavaScript对象的字符串,同时它也是一种数据结构,这种数据结构比较流行,逐渐替换掉了传统的xml数据结构

json格式:
  • 对象格式
  • 数组格式
对象格式:

对象格式的json数据,使用一对大括号,大括号里面放入key:value形式的键值对,多个键值对使用逗号分隔

// 对象格式的json数据

        var sJson1 = '{"name":"张三", "age":20}';

json中的key属性名称和字符串值需要用双引号引起来,必须只能使用双引号!

数组格式

数组格式的json数据,使用一对中括号,中括号里面的数据使用逗号分隔

 // 数组格式的json数据

        var sJson2 = '[{"name":"李四", "age":18}, {"name":"李五", "age":28}]';

json数据转换成JavaScript对象

json本质上是字符串,如果在js中操作json数据,可以将json字符串转化为JavaScript对象

// 把json数据转化成JavaScript对象

        var oPerson = JSON.parse(sJson1);

所有操作示例代码:




    
    
    
    Document
    
    
        // web服务器把json数据给浏览器,当js解析json数据的时候为了方便,把json数据解析成一个JavaScript对象
        
        // 对象格式的json数据
        var sJson1 = '{"name":"张三", "age":20}';
        // 把json数据转化成JavaScript对象
        var oPerson = JSON.parse(sJson1);
        console.log(oPerson);
        // 获取属性值
        console.log(oPerson.name + oPerson.age);

        // 数组格式的json数据
        var sJson2 = '[{"name":"李四", "age":18}, {"name":"李五", "age":28}]';
        var aArray = JSON.parse(sJson2);
        console.log(aArray);
        // 通过下标获取指定js对象,然后通过js对象获取name属性
        var oPerson = aArray[1];
        console.log(oPerson.name);
        
        // 浏览器给python服务器的json数据,python服务器程序可以解析成字典或列表
    



    

三、ajax 1. ajax的介绍

ajax是 Asynchronous JavaScript and XML的简写,ajax是一个前后台配合的技术,它可以让JavaScript发送异步的http请求,与后台通信进行数据的获取。ajax最大的优点是实现局部刷新,ajax可以发送http请求,当获取到后台数据的时候更新页面显示数据实现局部刷新,当前端页面想和后台服务器进行数据交互就可以使用ajax了。

在html页面使用ajax需要在web服务器环境下运行,一般向自己的web服务器发送ajax请求

2. ajax的使用(get)

jquery将它封装成了一个方法$.ajax(),我们可以直接用这个方法来执行ajax请求

代码示例:




    
    
    
    Document
    
    
        // // 向web服务器发送ajax请求,本质上是一个http协议的请求
        // $.ajax({
        //     // 请求的资源地址,不指定ip地址和端口号表示请求的是自己的服务器资源数据
        //     url: "Data.json",
        //     // 请求方式:get、post(大小写都可)
        //     type: "get",
        //     // 指定对服务器数据的解析格式
        //     dataType: "JSON",
        //     // data表示发送给web服务器的参数,没有参数不需要设置
        //     data:{"name":"ls"},
        //     // 请求成功执行的函数
        //     success: function(data){
        //         console.log(data.name);
        //         // 数据请求回来以后可以绑定给html中的某个标签控件,实现局部刷新
        //     },
        //     // 请求失败执行的函数
        //     error: function(){
        //         alert("请求失败!");
        //     },
        //     // 是否使用异步,不指定默认为异步请求
        //     async: true
        // });

        // 发送get方式的ajax请求的简写方式
        // 1. 请求的地址
        // 2. 请求传给web服务器的参数
        // 3. 请求成功的回调函数
        // 4. error请求失败的回调函数
        $.get(
            "Data.json",{"name":"ls"},function(data){
                alert(data.name);
            },"JSON").error(function(){
                alert("请求失败了");
            });
    


    

发送请求之前先打开python自带服务器(在代码所在文件夹路径下):python -m http.server

结果:

ajax参数说明:

  1. url 请求地址
  2. type 请求方式,默认是‘GET’,也可以用‘POST’
  3. dataType 设置返回的数据格式,常用‘json’格式
  4. data 设置发送给服务器的数据,没有参数不需要设置
  5. success 设置请求成功后的回调函数
  6. error 设置请求失败后的回调函数
  7. async 设置是否异步,默认为‘true’,表示异步,一般都用异步,可以省略不写

同步和异步:

  • 同步是一个ajax请求完成后另外一个才可以请求,需要等待上一个ajax请求完成,好比线程同步
  • 异步是多个ajax同时请求,不需要等待其他ajax请求完成,好比线程异步

$.get和$.post方法的参数:(不能说很像,只能说一模一样)

$.get(url,data,success(data,status,xhr),dataType).error(func)

$.post(url,data,success(data,status,xhr),dataType).error(func)

1. url 请求地址

2. data 设置发送给服务器数据,没有参数不用设置

3. success 设置请求成功后的回调函数

  • data 请求的结果数据
  • status 请求的状态信息,例:“success”
  • xhr 底层发送http请求XMLHttpRequest对象

4. dataType 设置返回的数据格式

  • “xml”
  • “html”
  • “text”
  • “json”

5. error 表示错误异常处理

  • func 错误异常回调函数
3. ajax的使用(post)

python自带的服务器不支持post请求,不过我们可以用之前自己写的服务器来接收post请求

post请求代码:




    
    
    
    Document
    
    
        // 发送get方式的ajax请求的简写方式
        // 1. 请求的地址
        // 2. 请求传给web服务器的参数
        // 3. 请求成功的回调函数
        // 4. error请求失败的回调函数
        $.post(
            "Data.json",{"name":"ls"},function(data){
                alert(data.name);
            },"JSON").error(function(){
                alert("请求失败了");
            });
    


    

把下图中的东西放到一块:

在终端启动服务器:

 

 

关注
打赏
1643043582
查看更多评论
立即登录/注册

微信扫码登录

0.0417s