數組、Math、JOSN總結
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總結