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总结的更多相关文章

  1. 如何用Math.max.apply()获取数组最大/小值

    最近似乎对JavaScript有点兴趣了~~~打算好好钻研这个东西.可是,一开始就遇到问题了!!! Math.min.apply(obj,args);//这个obj对象将代替Function类里thi ...

  2. AJAX-php-json数组

    1.在php中有个数组,响应回前端 $array=["习大大","川普","金三胖"];2.JS对象数据格式 ex: 数组: var TOM ...

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

    基本类型封装 基本数据类型对象包装类概述 *A:基本数据类型对象包装类概述 *a.基本类型包装类的产生 在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的.而程序开发中,我们需要把字 ...

  4. 史上最全、JavaScript基础篇

    本章内容: 简介 定义 注释 引入文件 变量 运算符 算术运算符 比较运算符 逻辑运算符 数据类型 数字 字符串 布尔类型 数组 Math 语句 条件语句(if.switch) 循环语句(for.fo ...

  5. Js内置对象的应用

    Boolean.Number.Objectfunction对象    另一种写法:        var add=new Function("x","y",&q ...

  6. JavaScript基础篇最全

    本章内容: 简介 定义 注释 引入文件 变量 运算符 算术运算符 比较运算符 逻辑运算符 数据类型 数字 字符串 布尔类型 数组 Math 语句 条件语句(if.switch) 循环语句(for.fo ...

  7. JavaScript基础大全篇

    本章内容: 简介 定义 注释 引入文件 变量 运算符 算术运算符 比较运算符 逻辑运算符 数据类型 数字 字符串 布尔类型 数组 Math 语句 条件语句(if.switch) 循环语句(for.fo ...

  8. javascipt学习笔记1

    一.javascript 部分 1.整理 <<javascript>> 要学习哪些章节 及核心内容? ①javascript简介 核心技术点:javascript定义 作用特点 ...

  9. 【JS】 Javascript 入门

    javascript **********本章大量示例和内容引用自w3cschool的javascript教程************** 本来已经快写完90%左右了,结果不小心跑了个js,不小心把浏 ...

  10. 常用API3 BigData

    基本类型包装类 大家回想下,在第二天我们学习Java中的基本数据类型时,说Java中有8种基本的数据类型,可是这些数据是基本数据,想对其进行复杂操作,变的很难.怎么办呢 基本类型包装类概述 在实际程序 ...

随机推荐

  1. [工具分享]wingide 6 算号代码keygen

    import string import random import sha BASE16 = '0123456789ABCDEF' BASE30 = '123456789ABCDEFGHJKLMNP ...

  2. python 三元表达式 列表推导式,生成器表达式。递归,匿名函数, 内置函数

    三元表达式 三元表达式仅应用于: 1.条件成立返回一个值 2.条件不成立返回一个值 res = x if x>y else y print(res) name= input("姓名&g ...

  3. Linux系统调用及其效率

    操作系统相关概念: 操作系统---管理计算机硬件与软件资源的软件,是用户与系统操作交互的接口,为在它上面运行的程序提供服务. 操作系统内核 ----操作系统的核心.负责管理系统的进程.内核.设备驱动程 ...

  4. 如何设置Xcode模拟器地图的当前位置

    使用模拟器上的地图的话,需要设置当前位置,开启定位后,才能定位准确. 一.选中模拟器:Debug - Location - Custom Location 弹出的纬经度坐标.纬经度.纬经度坐标,默认显 ...

  5. Unity5自动命名Assetbundle并打包

    http://www.shihuanjue.com/?p=57 using UnityEngine; using System.Collections; using UnityEditor; usin ...

  6. qscoj53(图的m着色问题)

    题目链接:http://qscoj.cn/contest/12/problem/53/ 题意:中文题诶- 思路:n个点, 那么最多用n种颜色,所以我们可以枚举颜色种类1~n,然后再判断用 i 种颜色可 ...

  7. [Xcode 实际操作]九、实用进阶-(7)使用Xcode的版本管理功能(SCM)

    目录:[Swift]Xcode实际操作 本文将演示系统的版本控制功能. 软件配置管理(SCM):Software configuration management 是指通过执行版本控制.变更控制的规程 ...

  8. [Xcode 实际操作]九、实用进阶-(12)从系统相册中读取图片

    目录:[Swift]Xcode实际操作 本文将演示从系统相册中读取图片. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit //添加两个协议 ...

  9. kafka 安装部署

    环境:ubuntu 12.04 64位桌面版 解压kafka -0.10.0.0.tgz -C /root/software/ 进入目录 cd kafka_2.-0.10.0.0/ 创建data 目录 ...

  10. Centos7安装与配置domain模式wildfly(默认配置)

    (1)安装与配置JDK8 1)使用wget下载JDK8: wget --no-check-certificate --no-cookies --header "Cookie: oraclel ...