1. 程式人生 > >數組、Math、JOSN總結

數組、Math、JOSN總結

頁面 bsp 導致 截取 alert [] del 對象 last


json對象:

1.數組有length屬性【盡量使用for循環】
2.而json沒有length屬性【可以使用for...in...循環】
3.for in 不能遍歷頁面中的節點對象。


for ( var key in json4 ) {
alert( key );
alert( json4[key] );
}
//使用方括號[]取鍵名,for和for in 可以相互嵌套。

delete objName.key : 【對象名.要刪除的屬性名】

在數據傳輸流程中,json是以文本,即字符串的形式傳遞的,而JS操作的是JSON對象,所以,JSON對象和JSON字符串之間的相互轉換是關鍵。例如:

JSON字符串:

var str1 = ‘{ "name": "cxh", "sex": "man" }‘;

JSON對象:

var str2 = { "name": "cxh", "sex": "man" };

一、JSON字符串轉換為JSON對象

//使用JS支持的轉換方式:

var obj = eval(‘(‘ + str + ‘)‘);


或者使用瀏覽器支持的轉換方式(IE8及以上瀏覽器支持):

var obj = JSON.parse(str);

然後,就可以這樣讀取:

alert(obj.name);

alert(obj.sex);

註意:從jQuery 3.0開始,不推薦使用$.parseJSON。 要解析JSON字符串,請改用原生的 JSON.parse 方法。

傳入格式有誤的 JSON 字符串可能導致拋出異常。


二、可以運用全局方法 JSON.stringify()將JSON對象轉化為JSON字符串。

例如:使用瀏覽器支持的轉換方式(IE8及以上瀏覽器支持):

var last=JSON.stringify(obj);

alert(last);


特別留心:上面的多個方法中,除了eval()函數是js自帶的之外,其他的多個方法都來自json.js包。新版本的 JSON 修改了 API,將 JSON.stringify() 和 JSON.parse() 兩個方法都註入到了 Javascript 的內建對象裏面,前者變成了 Object.toJSONString(),而後者變成了 String.parseJSON()。如果提示找不到toJSONString()和parseJSON()方法,則說明您的json包版本太低。

--------------------------------------------------------------------


數組的一些方法:

push():在最後一個元素後面添加

unshift: 在第一個元素以前添加

pop(): 刪除最後一個元素

shift: 刪除第一個

splice(開始位置, 刪除元素個數, 添加的元素,添加的元素,添加的元素,添加的元素.....)【返回被刪除的項目】註釋:該方法會改變原始數組。

slice(開始位置,結束位置):截取數組/字符串

sort(): 會將數組裏面的元素轉化為字符串,再進行排序。
給數字進行排序的時候,要在sort方法裏面傳入一個function,這個函數裏面兩個參數n1,n2。註意: 數組在原數組上進行排序,不生成副本。

// 升序: 從小到大的順序排列
arr.sort(function (n1,n2) {return n1 - n2;});

// 降序: 從大到小排列
arr.sort(function (n1,n2) {return n2 - n1;});

join() :返回一個字符串,用於把數組中的所有元素連成一個字符串,()內放指定要使用的分隔符。如果省略該參數,則使用逗號作為分隔符


concat() :用於連接兩個或多個數組。註意:該方法不會改變現有的數組 ,而僅僅會返回被連接數組的一個副本。


reverse() :用於顛倒數組中元素的順序。註意: 該方法會改變原來的數組,而不會創建新的數組。


-------------------------------------------------------------------

Math.round(x) : 把數四舍五入為最接近的整數。
Math.abs(x) : 返回數的絕對值。
Math.random(x) : 返回 0 ~ 1 之間的隨機數。
Math.max(x,y)
Math.min(x,y)
Math.pow(x,y) : 返回 x 的 y 次冪。
Math.floor(x) : 對數進行下舍入。
Math.ceil(x) : 對數進行上舍入。

Math.PI 是一個常量。

-------------------------------------------------------------------------------------

去除偶數:

var arr = [1,2,2,3,4,4];

for (var i = 0; i<arr.length; i++)
{
if (arr[i] % 2 == 0)
{
arr.splice(i,1);
i--;
}
}
alert(arr);

數組、Math、JOSN總結