區分 JS陣列 和 JOSN物件

2021-09-30 13:08:43 字數 1245 閱讀 9634

一,陣列

1. 定義一維陣列:

var s1=new array();

s1=[1,2,3,4]或者s1[0]=1,s1[1]=2,s1[3]=3,s1[4]=4;

alert(s1[0]);

結果為1;

2. 定義二維素組:

var s1=new array();

var s1=[[3,1],[2,3,4],3,[4,5,6,7,8]];

alert(s1[1][0]);

結果為2;

二,定義json物件

1. json物件

var status_process =    

alert(status_process);

結果為:object:object;

2. json字串

所謂json字串,是指該字串變數的值與json的格式相同,但是不是json物件,比如:

var s1="";

var status_process=s1+s2 +s3;

雖然status_process的值符合json物件的格式,但是它不是物件,只是乙個字串(是拼湊出來的);

將字串轉換為json物件使用函式eval(),eval("(" + status_process+ ")");

結論:從後台傳入到前台的是json字串,不是真正的json物件,因此需要使用eval函式轉換。

3. json物件的使用

var status_process = ;

alert(status_process["name5"]);

alert(status_process.name5);

兩個都為:閒置期

4,json二維物件        

var status_process = ,

name1 : '播種期',

name2 : '苗期',

name3 : '生長期',

name4 : '採收期'

};alert(status_process["name5"]["name3"]);

alert(status_process.name5.name3);

結果都為:'空閒閒置期'

**

區分陣列物件

最佳方法 var arr 1,2,3,1 var arr2 function isarrayfn value else alert isarrayfn arr true alert isarrayfn arr2 true tostring方法 function isarrayfn o var arr...

js遍歷陣列和物件的方法以及如何區分

普通的for迴圈 let arr 1,2,3,4 for let i 1 i arr.length i for in遍歷陣列的鍵名或者陣列的下標 存在的問題 1 在某些情況下,這段 可能按照隨機順序遍歷陣列元素,2 陣列原型鏈上的屬性都能被訪問到 let arr 1,2,3,4 for let i ...

js合併物件和js合併陣列

object.assign target,將所有可列舉屬性的值從乙個或多個源物件複製到目標物件 assign target t,source1 u,source2 v t u v let target 目的 要將a,b,c物件複製到target物件中 let a let b let c let ob...