数组、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);

时间: 2024-09-30 20:02:43

数组、Math、JOSN总结的相关文章

js 数组&amp;Math

复习 时间对象 创建时间对象 var date = new Date(); var date1 = new Date(2019,6,20,12,12,12); var date2 = new Date('2019-7-20 12:12:12'); var date2 = new Date('Wed Jul 03 2019'); 修改,获取时间的各个部分 setFullYear() getFullYear() setMonth() getMonth() //0-11 setDate() getDa

数组的方法总结

1.arr.push() 2.arr.pop() 3.arr.unshift() 4.arr.shift() 5.arr.splice(起始位置n,删除几项,在索引n的前边增加新的项) 6.arr.sort(function(a,b){ return a-b}) //从小到大 7.arr.concat(arr1) 8.arr.reverse() 8.arr.join() 9.arr.forEach(function(item,index,arr){}) 10.arr.map(function(i

AJAX-php-json数组

1.在php中有个数组,响应回前端 $array=["习大大","川普","金三胖"];2.JS对象数据格式 ex: 数组: var TOM=[]; TOM[0]="汤姆"; TOM[1]=20; TOM[2]="180cm"; TOM[3]="75KG"; 改版: var TOM=[]; TOM["name"]="汤姆"; TOM["a

数组小知识点

public static int[] copyOf(int[] original, int newLength) { int[] copy(目标数组) = new int[newLength(数组长度)]; System.arraycopy(original(原数组), 0(从原数组什么位置开始拷贝), copy(拷贝), 0(从目标数组什么位置开始放), //Math.min(original.length, newLength):长度,取最小值,原数组和新数组那个新的和原数组 Math.m

获取一个1~50的随机不重复数组

// 获取一个1~50的随机不重复数组// Math.ceil()用于向上取整 Math.floor()用于向下取整 Math.round()用于四舍五入取整数var arr = [];var number = 50;for(var i=1;i<=number;i++){ arr.push(i);}console.log(arr);var result = [];for(var j=number-1;j>=0;j--){ var rand = Math.ceil(Math.random()*j

7、包装类、System、Math、Arrays、大数据运算

基本类型封装 基本数据类型对象包装类概述 *A:基本数据类型对象包装类概述 *a.基本类型包装类的产生 在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的.而程序开发中,我们需要把字符串数据,根据需求转换成指定的基本数据类型,如年龄需要转换成int类型,考试成绩需要转换成double类型等 *b.八种基本类型对应的包装类 char Character int Integer byte Byte short Short long Long float Float double D

javascript基础数组,字符串的操作和冒泡函数等

 数组 var arr = new Array(2,1,5,6,7,4,9); var arr2 = Array(1,2,"33"); //省略new来创建数组 var arr3 = [1,2,"33"]; //通过常量来创建数组 Math.random(); //0~1之间任意的数. for(var i in arr){document.write(arr[i]+" ");} //另一种遍历arr的方式.这个方法要比for循环效率高 1.栈结构

JavaScript基础篇

本章内容: 简介 定义 注释 引入文件 变量 运算符 算术运算符 比较运算符 逻辑运算符 数据类型 数字 字符串 布尔类型 数组 Math 语句 条件语句(if.switch) 循环语句(for.for in.while.do-while) label语句 异常处理 函数 定义函数3种方式 函数参数(arguments) 作用域与作用链 闭包 面向对象(特性,构造模式,原型模式prototype) prototype 验证方法(isPrototypeOf.hasOwnProperty.in) 其

【JS】 Javascript 入门

javascript **********本章大量示例和内容引用自w3cschool的javascript教程************** 本来已经快写完90%左右了,结果不小心跑了个js,不小心把浏览器弄死,不小心没保存草稿T-T一切都要从头开始写过了orz.好吧再写一遍! ■ 概述 js是一种轻量级的浏览器脚本语言,其兼容性很好(几乎可以用在所有的浏览器上)这也就意味着从PC到智能手机所有可以用浏览器的设备都可以运行js脚本了.所以说js是互联网上最受欢迎&最常用的脚本语言不为过. js被互

《Python核心编程》数字类型

1.数字类型简介 Python中数字类型包括:整型.长整型.布尔型.双精度浮点型.十进制浮点型.复数.这些数字类型都是不可变类型,也就是说,改变了数字的值会生成新的对象. 在Python中删除数字对象,可以用语句:del aInt,aLong,aFloat,aComplex 2.整型 布尔型 取值范围只有两个值,True和False.它们在数学运算中对应1和0. 对于值为0的任何数字或空集(空列表.空元组.空字典等)在Python中的布尔值都是False. 长整型 在其他编程语言中,比如C++中