Ⅰ js遍歷json數組,求大神指導
<!doctypehtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<metaname="Generator"content="EditPlus®">
<metaname="Author"content="">
<metaname="Keywords"content="">
<metaname="Description"content="">
<老茄title>Document</title>
</head>
<body>
</body>
<script>
varjson1=[
{"age":5,"num":2,"people":3,"class":9},
{"age"消譽:1,"num":3,"people":2,"class":8},
{"age":4,"num":6,"people":5,"class":3}
],
json2=[
{"field":"age","typle":"sum","title":"ss"},
{"field":"num","typle":"sum","title":"ss"},
{"field":"people","typle":"sum","title":"ss"},
{"field":"class","typle":"nosum","title"拿含段:"ss"}
],
typeArr={'sum':'sum','nosum':''};
functiongetData(json1,json2,typeArr){
varj=0,
len1=json1.length,
len2=json2.length,
o={},
json3=[];
for(;j<len2;j++){
varj2=json2[j];
if(j2.field){
vartype=typeArr[j2.typle],
num=-1,
i=0;
for(varii=0;ii<json3.length;ii++){
varj3=json3[ii];
if(j3.type===type){
o=clone(j3);
num=ii;
}
}
for(;i<len1;i++){
varj1=json1[i];
if(type==='sum'){
o[j2.field]=o[j2.field]?o[j2.field]+j1[j2.field]:j1[j2.field];
}
}
if(type){
o.type=type;
if(num!==-1){
json3[num]=o;
o={};
}else{
json3[json3.length]=o;
}
}
}
}
returnjson3;
}
//深
functionclone(o){
vark,
ret=o,
b;
if(o&&((b=(oinstanceofArray))||oinstanceofObject)){
ret=b?[]:{};
for(kino){
if(o.hasOwnProperty(k)){
ret[k]=clone(o[k]);
}
}
}
returnret;
}
//getresult
console.log(getData(json1,json2,typeArr));
</script>
</html>
Ⅱ js如何讀取與遍歷json
json。本質就是鍵值對。是網頁特效對象的序列罩亂數化,是一個字元串,是一個數組。【js中,字元串是對象,數組是對象,類也是對象,一切皆對象】 json(javascript object notation) 是一種輕量級的數據交換格式。易於人閱讀和編寫,同時也易於機器解析和生成。它基陪圓於javascript(standard ecma-262 3rd edition - december 1999)的一個子集。 json採用完全獨立於語言的文本格式,但是也使用了類似於c語言家族的習慣(包括c, c++, c#, java, javascript, perl, python等)。這些特性使json成為理想的數據交換語言<script function a(){ var str = {error:error here!hello!} ; var jsonobject = eval('('+str+')') ; alert(jsonobject.error) ;} </script <a onclick=a();test</a 下面看個簡單的實例 {date:1999-9-9,x:100,y:100}, [['張三','20'],['李四','30']]; 這就是json。本質就是鍵值對。是javascript對象的序列化,是一個字元串,是一個數組。【js中,字元串是對象,數組是對象,類也是對象,一切皆對象】 <script language=javascript var menu1 ={ a:{title:1},//在js中,鍵值有沒有雙引號都無所謂,不是錯誤,語法就是這么規定的物首。 b:{title:2}, c:{title:3}, d:{title:4}} alert(menu1.a.title); for(var x in menu1){ document.write(x.tostring()+</br); document.write(menu1[x].title+</br); document.write(</br==================</br);} </script 好了現在提供一款官網的寫法
Ⅲ JS怎麼遍歷json數組
用 for in 循環 遍歷
varstr='[{"name":"宗2瓜","num":"1","price":"122"},{"余隱name":"宗呱呱豎山廳","num":"1"唯畢,"price":"100"}]';
varxqo=eval('('+str+')');
for(variinxqo){
alert(xqo[i].name);
}
Ⅳ js 怎麼遍歷json中的json對象里的數據
var jsondata = yourdata;
for(var x in jsondata){
document.write(x+"="+jsondata[x]);
}
如果是jsonarray就含兄外面套一遲老畢層for即可
var jsonarray =yourarray;
for(var i =0;i<jsonarray.length;i++){
var jsonobj = jsonarray[i];
for(var x in jsonobj){
document.write(x+"="碼芹+jsonobj[x]);
}
}
Ⅳ 前端基本功:JS(十一)動畫封裝(CSS樣式獲取、JSON遍歷)
盒子 原來的位置 0 + 10 盒子現在的offsetLeft 10
|-5| = 5
這三個函數都是 數學函數
Math
比如說 console.log(Math.ceil(1.01)) 結果 是 2
console.log(Math.ceil(1.9)) 結果 2
console.log(Math.ceil(-1.3)) 結果 是 -1
比如說 console.log(Math.floor(1.01)) 結果 是 1
console.log(Math.floor(1.9)) 結果 1
console.log(Math.floor(-1.3)) 結果 是 -2
console.log(Math.round(1.01)) 結果 是 1
console.log(Math.round(1.9)) 結果 是 2
勻速動畫的原理: 盒子本身的位置 + 步長
緩動動畫的原理: 盒子本身的位置 + 步長 (不斷變化的)
( 缺陷:只能水平方向!隨後的「封裝運動框架單個屬性會進一步改進」 )
我們訪問得到css 屬性,比較常用的有兩種:
點語法可以得到 width 屬性 和 top屬性 ** 帶有單位的 。 100px
但是這個語法有非常大的 缺陷**, 不變的。
後面的width 和 top 沒有辦法傳遞參數的。
var w = width;
box.style.w
最大的優點 : 可以給屬性傳遞參數
我們想要獲得css 的樣式, box.style.left 和 box.style.backgorundColor
但是它只能得到 行內的樣式。
但是我們工作最多用的是 內嵌式 或者 外鏈式 。
怎麼辦?
核心: 我們怎麼才能得到內嵌或者外鏈的樣式呢?
外部(使用<link>)和內嵌(使用<style>)樣式表中的樣式(ie和opera)
兩個選項是必須的, 沒有偽類 用 null 替代
我們這個元素裡面的屬性很多, left top width ===
我們想要某個屬性, 就應該 返回該屬性,所有繼續封裝 返回當前樣式的 函數。
千萬要記得 每個 的意思 : 那是相當重要
flag在js中一般作為開關,進行判斷。
等動畫執行完畢再去執行的函數 回調函數
我們怎麼知道動畫就執行完畢了呢?
很簡單 當定時器停止了。 動畫就結束了
案例源碼:
in運算符也是一個二元運算符,但是對運算符左右兩個操作數的要求比較嚴格。in運算符要求第1個(左邊的)操作數必須是字元串類型或可以轉換為字元串類型的其他類型,而第2個(右邊的)操作數必須是數組或對象。只有第1個操作數的值是第2個操作數的屬性名,才會返回true,否則返回false
案例源碼:
鏈接: http://pan..com/s/1miEvqoo
Ⅵ avalon.js怎麼遍歷json
JSON中,有兩種結構:對象和數組。
1.對象
一個對象以「{」開始,「}」結束。每個「key」後跟一「:」,「『key/value』 對」之間運用 「,」分隔。游正
packJson = {"name":"caibaojian.com", "password":"111"}
2.數組
packJson = [{"name":"caibaojian.com", "password":"111"}, {"name":"tony", "password":"111"}];
數組是值的有序集合。一個數組以「[」開始,「]」結束。值之間運用 「,」分隔。
JSON對象和JSON字元串的轉換
在數據傳輸流程中,json是以文本,即字元串的形式傳遞的,而JS操作的是JSON對象,所以,JSON對象和JSON字元串神唯悔之間的相互轉山羨換是關鍵。例如:
JSON字元串:
var jsonStr = '{"name":"caibaojian", "password":"1111"}';
JSON對象:
var jsonObj = {"name":"caibaojian.com", "password":"1111"};
1、String轉換為Json對象
var jsonObj = eval('(' + jsonStr + ')');
2.Json對象轉換為String字元串
var jsonStr = jsonObj.toJSONString();
jQuery遍歷json對象
grep
<script type='text/javascript' src="/jquery.js"></script>
<script type="text/javascript">
$().ready(
function(){
var array = [1,2,3,4,5,6,7,8,9];
var filterarray = $.grep(array,function(value){
return value > 5;//篩選出大於5的
});
for(var i=0;i<filterarray.length;i++){
alert(filterarray[i]);
}
for (key in filterarray){
alert(filterarray[key]);
}
}
);
</script>
Ⅶ js遍歷json對象(推薦)
原生js遍歷json對象
遍歷json對象:
無規律:
有規律:
遍歷json對象
有如下 json對象:
var obj ={"name":"馮娟","password":"123456","department"兄裂:"技羨運閉術部","sex":"女","old":30};
遍歷方法:
數組對象的遍歷:
下面我悄前們對照一下js和jquer的遍歷方法:
原文網址: https://www.cnblogs.com/qingqingzou-143/p/7079725.html
Ⅷ ajax中如何把傳遞過來的json數據循環遍歷出
先把傳遞過來的字元串轉扒悔換成對象,再按照一般思路遍歷就可以了。
varjsonObj=eval("("+xmlHttp.responseText+")");//轉換為對象
for(vari=0;i<jsonObj.length;i++){...}
對象裡面有啥屬性,按照後台的操作正常取出來就可以了。假如對談芹象jsonObj
裡面含有後台的Person對象(並且含有屬性:春侍正private String name;),遍歷的時候獲取name的話,可以
for(vari=0;i<jsonObj.length;i++){
varpersonName=jsonObj[i].name;
}
稍微提示下,希望有所助!