Maison > interface Web > js tutoriel > Explication détaillée du processus de traitement JavaScript et d'analyse des compétences JSON data_javascript

Explication détaillée du processus de traitement JavaScript et d'analyse des compétences JSON data_javascript

WBOY
Libérer: 2016-05-16 15:39:37
original
1074 Les gens l'ont consulté

JSON (JavaScript Object Notation) est un format de données simple qui est plus léger que XML. JSON est un format JavaScript natif, ce qui signifie que le traitement des données JSON en JavaScript ne nécessite aucune API ou boîte à outils spéciale.

Les règles de JSON sont simples : un objet est une collection non ordonnée de « paires nom/valeur ». Un objet commence par "{" (crochet gauche) et se termine par "}" (crochet droit). Chaque "nom" est suivi d'un ":" (deux-points) ; les paires "nom/valeur" sont séparées par un "," (virgule). Pour des détails spécifiques, veuillez vous référer à http://www.json.org/json-zh.html

Un exemple simple :

code js

function showJSON() {  
  var user =  
  {  
  "username":"andy",  
  "age":20,  
  "info": { "tel": "123456", "cellphone": "98765"},  
  "address":  
  [  
  {"city":"beijing","postcode":"222333"},  
  {"city":"newyork","postcode":"555666"}  
  ]  
  }  
  alert(user.username);  
  alert(user.age);  
  alert(user.info.cellphone);  
  alert(user.address[0].city);  
  alert(user.address[0].postcode);  
  }
Copier après la connexion

Ceci représente un objet utilisateur avec des attributs tels que le nom d'utilisateur, l'âge, les informations, l'adresse, etc.

Vous pouvez également utiliser JSON pour modifier simplement les données, modifiez l'exemple ci-dessus

code js

function showJSON() {  
  var user =  
  {  
  "username":"andy",  
  "age":20,  
  "info": { "tel": "123456", "cellphone": "98765"},  
  "address":  
  [  
  {"city":"beijing","postcode":"222333"},  
  {"city":"newyork","postcode":"555666"}  
  ]  
  }  
  alert(user.username);  
  alert(user.age);  
  alert(user.info.cellphone);  
  alert(user.address[0].city);  
  alert(user.address[0].postcode);  
  user.username = "Tom";  
  alert(user.username);  
  } 
Copier après la connexion

JSON fournit le package json.js. Après avoir téléchargé http://www.json.org/json.js, importez-le puis utilisez simplement object.toJSONString() pour le convertir en JSON. données.

code js

function showCar() {  
  var carr = new Car("Dodge", "Coronet R/T", 1968, "yellow");  
  alert(carr.toJSONString());  
  }  
  
  function Car(make, model, year, color)    {  
  this.make  =  make;  
  this.model  =  model;  
  this.year  =  year;  
  this.color  =  color;  
  }
Copier après la connexion

Vous pouvez utiliser eval pour convertir les caractères JSON en objet

code js

function myEval() {  
  var str = '{ "name": "Violet", "occupation": "character" }';  
  var obj = eval('(' + str + ')');  
  alert(obj.toJSONString());  
  }
Copier après la connexion

Ou utilisez la méthode parseJSON()

code js

function myEval() {  
  var str = '{ "name": "Violet", "occupation": "character" }';  
  var obj = str.parseJSON();  
  alert(obj.toJSONString());  
  }
Copier après la connexion

Ce qui suit utilise un prototype pour écrire un exemple ajax de JSON.

Écrivez d'abord un servlet (le mien est servlet.ajax.JSONTest1.java) et écrivez une phrase

code Java

response.getWriter().print("{ \"name\": \"Violet\", \"occupation\": \"character\" }");  
Copier après la connexion

Écrivez une requête ajax sur la page

code js

function sendRequest() {  
  var url = "/MyWebApp/JSONTest1";  
  var mailAjax = new Ajax.Request(  
  url,  
  {  
  method: 'get',  
  onComplete: jsonResponse  
  }  
  );  
  }  
  
  function jsonResponse(originalRequest) {  
  alert(originalRequest.responseText);  
  var myobj = originalRequest.responseText.parseJSON();  
  alert(myobj.name);  
  }
Copier après la connexion

Prototype-1.5.1.js fournit une méthode JSON, String.evalJSON(), vous pouvez modifier la méthode ci-dessus sans utiliser json.js

code js

function jsonResponse(originalRequest) {  
  alert(originalRequest.responseText);  
  var myobj = originalRequest.responseText.evalJSON(true);  
  alert(myobj.name);  
  }  
Copier après la connexion

JSON fournit également le package java jar http://www.json.org/java/index.html L'API est également très simple, voici un exemple

Ajouter des paramètres de requête en javascript

code js

function sendRequest() {  
  var carr = new Car("Dodge", "Coronet R/T", 1968, "yellow");  
  var pars = "car=" + carr.toJSONString();  
  
  var url = "/MyWebApp/JSONTest1";  
  var mailAjax = new Ajax.Request(  
  url,  
  {  
  method: 'get',  
  parameters: pars,  
  onComplete: jsonResponse  
  }  
  );  
  }  
Copier après la connexion

En utilisant la chaîne de requête JSON, vous pouvez simplement générer JSONObject et l'analyser, modifier le servlet pour ajouter le traitement JSON (utilisez json.jar)

code Java

private void doService(HttpServletRequest request, HttpServletResponse response) throws IOException {  
  String s3 = request.getParameter("car");  
  try {  
  JSONObject jsonObj = new JSONObject(s3);  
  System.out.println(jsonObj.getString("model"));  
  System.out.println(jsonObj.getInt("year"));  
  } catch (JSONException e) {  
  e.printStackTrace();  
  }  
  response.getWriter().print("{ \"name\": \"Violet\", \"occupation\": \"character\" }");  
  }  
Copier après la connexion

Vous pouvez également utiliser JSONObject pour générer des chaînes JSON et modifier le servlet

code Java

private void doService(HttpServletRequest request, HttpServletResponse response) throws IOException {  
  String s3 = request.getParameter("car");  
  try {  
  JSONObject jsonObj = new JSONObject(s3);  
  System.out.println(jsonObj.getString("model"));  
  System.out.println(jsonObj.getInt("year"));  
  } catch (JSONException e) {  
  e.printStackTrace();  
  }  
  JSONObject resultJSON = new JSONObject();  
  try {  
  resultJSON.append("name", "Violet")  
  .append("occupation", "developer")  
  .append("age", new Integer(22));  
  System.out.println(resultJSON.toString());  
  } catch (JSONException e) {  
  e.printStackTrace();  
  }  
  response.getWriter().print(resultJSON.toString());  
  }  
  js 代码
  function jsonResponse(originalRequest) {  
  alert(originalRequest.responseText);  
  var myobj = originalRequest.responseText.evalJSON(true);  
  alert(myobj.name);  
  alert(myobj.age);  
  } 
Copier après la connexion

Le contenu ci-dessus a pour but de vous présenter le processus détaillé de traitement JavaScript et d'analyse des données JSON. J'espère qu'il vous sera utile.

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal