json_ajax_i18n复习

本文深入讲解了JSON数据格式及其在JavaScript中的操作方法,包括创建、访问、转换json对象及字符串。同时,详细介绍了Ajax技术,包括原生JavaScript及jQuery中的Ajax请求方式,如$.ajax、$.get、$.post等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、JSON

1.什么是json

​ json全称为Javascript Object Notation,是一种轻量级的数据交互格式。分为两种形态,一种为json字符串形态,用于网络传输。另一种为json对象,用于JavaScript中进行操作。

2.在JavaScript中操作json
①创建json对象
			var json = {
				//输入数据:格式为,"key":value
				"key1":"String",
				"key2":123,
				"key3":{
					"key3_1":"String3_1",
					"key3_2":32,
					"key3_3":["String3_1",32]
				},
				"key4":["String",123,{
					"key3_1":"String3_1",
					"key3_2":32,
					"key3_3":["String3_1",32]
				}]
			}

​ key为键使用双引号引起,value可以为任意数据类型,可以在json对象中嵌套json对象。

②json对象的访问
			//使用对象.键名的方法即可访问json中的数据
			alert(json.key1);
			alert(json.key2);
			alert(json.key3);
			alert(json.key4);
③json对象转换为json字符方法
			//使用JSON.stringify方法来将json转换为字符串
			var jsonString = JSON.stringify(json);
			alert(jsonString);

​ 转化为json字符串之后,输出jsonString将显示其中的所有数据,类似于java中的toString方法

在这里插入图片描述

④将json字符串对象转换为json对象
			//使用JSON.parse方法将json字符串解析为json对象
			var json1 = JSON.parse(jsonString);
			alert(json1);

​ 输出结果如下:

在这里插入图片描述

3.在Java中操作json
在Java中操作json主要是操作三种类型转换,分别是JavaBean、List<>、Map<>,这里使用谷歌提供的Gson包来操作,所以在解析之前要导入Gson包;

 ①对JavaBean操作

​ 一,将JavaBean转换为json对象

        //创建JavaBean对象实例
        Person person = new Person(1, "lazy");

        //创建Gson对象实例
        Gson gson = new Gson();

        //使用gson.toJson方法转换为json字符串
        String personJsonString = gson.toJson(person);

        System.out.println(personJsonString);

​ 转换输出后的结果如下:

在这里插入图片描述
​ 二,将json字符串转换为JavaBean对象实例

        //使用gson.fromJson方法转换为JavaBean对象实例
        Person person1 = gson.fromJson(personJsonString, Person.class);

        System.out.println(person1);

​ 输出结果如下:

在这里插入图片描述

②对List<>操作

​ 一,将List<>转换为json对象

        //创建List实例
        ArrayList<Person> personArrayList = new ArrayList<>();
        personArrayList.add(new Person(1,"Lazy"));
        personArrayList.add(new Person(2,"Bob"));
        personArrayList.add(new Person(3,"Jack"));

        //创建gson对象实例
        Gson gson = new Gson();

        //使用gson.toJson方法转换为json字符串
        String personListJsonString = gson.toJson(personArrayList);
        System.out.println(personListJsonString);

​ 结果如下:

在这里插入图片描述

​ 二,将json对象转换为List<>(要注意的是不能像转换JavaBean一样直接在gson.fromJson()方法中加入List<>的类型类,否则会出现类型转换异常问题,而是使用gson包中的一个类,在其泛型中加入你要转换的List<>):

在这里插入图片描述

//使用gson.fromJson方法将json字符串转换为List
        List<Person> personList = gson.fromJson(personListJsonString, new TypeToken<List<Person>>() {
        }.getType());

        System.out.println(personList);

在这里插入图片描述

③对Map<>操作

​ 对Map<>操作与对List<>操作类似

二、Ajax

1.什么是Ajax

​ Ajax全称为Asynchronous Javascript And XML,异步JavaScript和XML。是一种通过js实现的异步请求,局部更新页面的技术。

2.JavaScript中的原生Ajax操作
function ajaxRequest() {
				// 1、我们首先要创建XMLHttpRequest
				var xmlHttpRequest = new XMLHttpRequest();

				// 2、调用open方法设置请求参数
				xmlHttpRequest.open("GET","http://localhost:8080/09_json_ajax_i18n/jsAjax",true);

				// 4、在send方法前绑定onreadystatechange事件,处理请求完成后的操作。
				xmlHttpRequest.onreadystatechange = function () {
					if(xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200){
						//获取请求到的Json字符串并转换为json对象
						var jsonObj = JSON.parse(xmlHttpRequest.responseText);

						document.getElementById("div01").innerHTML = "编号:" + jsonObj.id + ",姓名:" + jsonObj.name;
					}
				}
				// 3、调用send方法发送请求
				xmlHttpRequest.send();
			}
3.jQuery中的Ajax请求
①$.ajax方法

​ $.ajax方法,参数为:

​ “type”,该参数为请求的类型;

​ “url”, 该参数为请求的地址;

​ “data”, 该参数为请求的参数;

​ “success”, 该参数为处理响应的回调函数;

​ “dataType”,该参数为请求返回的数据类型,包含:text、json对象、xml数据;

					$.ajax({
						url:"url",
						type:"GET",
						data:"action=dojQueryAjax",
						dataType:"json",
						success:function (data) {
							$("#show").html("编号为:" + data.id + ",姓名为:" + data.name);
						}
					})

②$.get方法

​ $.get方法,参数为:

​ “url”,为要请求的地址;

​ “data”,为要发送的请求参数;

​ “callback”,请求成功时的回调函数;

​ “dataType”,请求返回的数据类型,同$.ajax方法;

$.get("url", function (data) {
							$("#show").html("get 编号为:" + data.id + ",姓名为:" + data.name);
						}, "json");//格式不同于$.ajax
③$.post方法(同上)
④$.getJson方法

​ $.getJson方法,参数为:

​ “url”,为要请求的地址;

​ “data”,为要发送的请求参数;

​ “callback”,为得到响应时的回调函数;

$.getJSON("url","action=dojQueryAjaxGetJson",function (data) {
						$("#show").html("get 编号为:" + data.id + ",姓名为:" + data.name);
					})
④serialize()方法

​ 该方法用于将表单序列化为 key=value&key=value 的形式;

alert($("#form01").serialize());

在这里插入图片描述

三、i18n国际化

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值