js中的列舉其實就是這個json格局的數據,也就是鍵值對存在的數據。
第一步:json的界說。
JSON(JavaScript Object Notation) 是一種輕量級的數據互換格局,采用完全自力于說話的文本格局,是抱負的數據互換格局。同時,JSON是 JavaScript 原生格局,這意味著在 JavaScript 中處置 JSON數據不必要任何特別的 API 或東西包。
本文本家兒如果對JS操作JSON的方法做下總結。
在JSON中,有兩種布局:對象和數組。
1. 一個對象以“{”(左括號)起頭,“}”(右括號)竣事。每個“名稱”后跟一個“:”(冒號);“‘名稱/值’ 對”之間運用 “,”(逗號)分隔。 名稱用引號括起來;值若是是字符串則必需用括號,數值型則不必要。例如:
var o={"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"};
2. 數組是值(value)的有序調集。一個數組以“[”(左中括號)起頭,“]”(右中括號)竣事。值之間運用 “,”(逗號)分隔。
第二步:json應用之級聯下拉框。
具體代碼如下所示:
<!DOCTYPE>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>json數據下拉框</title>
</head>
<body>
<h2>省市聯動框</h2>
省:<select id="selector" onchange=selectorChange(this.value)></select>
市:<select id="selector2"></select>
<script type="text/javascript">
var sheng = '{"廣東省key":"廣東省","河南省key":"河南省","河海說神聊省key":"河海說神聊省"}';
var shi = {
"廣東省key":{"gkey1":"廣州市","gkey2":"深圳市"},
"河南省key":{"hkey1":"鄭州市","hkey2":"周口市"},
"河海說神聊省key":{"bkkey":"石家莊"}
};
//將json字符串轉為json數據
var obj = JSON.parse(sheng);
var selector = document.getElementById("selector");
var selector2 = document.getElementById("selector2");
window.onload = function(){
for(var key in obj){
var opt = document.createElement("option");
opt.value = key;
opt.innerText = obj[key];
selector.appendChild(opt);
}
//獲取廣東省的市區,設置市區的默認值
var ds = shi["廣東省key"];
for(var key in ds){
//初始化市下拉框
var opt2 = document.createElement("option");
opt2.value = key;
opt2.innerText = ds[key];
selector2.appendChild(opt2);
}
}
//動態設置市下拉框
function selectorChange(value) {
//起首清晰舊數據
selector2.options.length=0;
//按照省獲取市的下拉框
var ds = shi[value];
for(var key in ds){
//初始化市下拉框
var opt2 = document.createElement("option");
opt2.value = key;
opt2.innerText = ds[key];
selector2.appendChild(opt2);
}
}
</script>
</body>
</html>
第三步:測試省市級聯。
打開網頁--查看默認市級下拉框--》在別離選擇河南省和河海說神聊省查看市級下拉框的轉變。結論是市級下拉框會隨省的改變而改變。具體操作成果如下圖所示:
第四步:當做面標的目的對象的實體類利用。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
<script>
//界說學生小明
var student ={name:"小明",sex:"男",age:"10"};
console.log("name:"+student.name+" sex:"+student.sex)
//界說多個學生,也就是學生數組
var students = [
{name:"小亮",sex:"男",age:"11"},
{name:"小美",sex:"女",age:"12"}
];
console.log("-----------------------------獲取第一個小亮 信息--------------------------------")
var xiaoliang = students[0];
console.log("name:"+xiaoliang.name+" sex:"+xiaoliang.sex)
//聲明一個空的json數據
var testJson = {};
testJson.student = student;
testJson.students = students;
console.log(testJson)
//新增
testJson.student.test = {test:"測試"};
testJson.students.push(student);
console.log(testJson)
//點竄
testJson.student.test={test:"測試2"}
console.log(testJson)
//刪除
delete testJson.student["test"];
console.log(testJson)
//移除數組中所有json數據
//testJson.students.splice(0,testJson.students.length);
console.log(testJson)
</script>
</html>
第五步:前后臺數據交互。
ajax返回數據時將后臺數據轉為json傳到前臺,便于利用。springmvc則直接經由過程注解@RestController,@ResponseBody可以簡單實現。
0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!