<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title> <script>
var json = { name : 'leo', age : 32 };
alert( json.name ); //json是跨平台的。 var arrUrl = [ 'img/1.png', 'img/2.png', 'img/3.png', 'img/4.png' ];
var arrText = [ '小宠物', '图片二', '图片三', '面具' ];
//使用json存放
var imgData = {
url : [ 'img/1.png', 'img/2.png', 'img/3.png', 'img/4.png' ],
text : [ '小宠物', '图片二', '图片三', '面具' ]
};
alert( imgData.url );//显示整个数组
alert( imgData.url[2] ); //var json1 = { name : 'miaov' };
var json2 = { 'name' : 'miaov' };//2种写法一样的,但是加引号是推荐的格式,不会兼容性出现问题 alert( json2.name );//用点不加引号
alert( json2['name'] );//用中括号,里面要加引号
json2.name = '妙味';
json2['name'] = 'miaov';
alert(json2.name); var json3 = { abc : 123, xyz : '' };
// { [], [], [] } [ {}, {}, {} ]
var arr = [ { 'name' : 'TM', 'age' : 23 }, { 'name' : 'leo', 'age' : 32 } ];
alert( arr[0].name + '今年有' + arr[1]['age'] );//点不加引号,中括号加引号 var json4 = { 'name' : 'miaov', 'age' : 3, 'fun' : '前端开发' };
for ( var attr in json4 ) {
alert( attr );//每一个键值
alert( json4[attr] );//不加引号,json4['attr']加引号表示获取键为'attr'的值
} var json5 = {
'url' : [ 'img/1.png', 'img/2.png', 'img/3.png', 'img/4.png' ],
'text' : [ '小宠物', '图片二', '图片三', '面具' ]
};
// var arr = [ {}, {}, {} ];
for ( var attr in json5 ) {//for in 遍历json,attr是每一个键
for ( var i=0; i < json5[attr].length; i++ ) {//遍历数组用for循环
alert( json5[attr][i] );
}
}
</script> <script>
var str = '';
var num = 0;
for ( var attr in document ) {//for in遍历对象,for in 是没有1,3,,4数字的,只能够自己加。
str += num + '. ' + attr + ':' +document[attr] + '<br />';
num ++;
}
document.body.innerHTML = str;
</script> <script>
//数组可以用for in 和for循环遍历,json只能用for in 不能够用for循环
var json = {
'url' : [ 'img/1.png', 'img/2.png', 'img/3.png', 'img/4.png' ],
'text' : [ '小宠物', '图片二', '图片三', '面具' ]
};
alert(json.length),//json没有长度属性
for ( var i=0; i < json.length; i++ ) {//json不能用for循环 }
var arr = [ 'a', 'b', 'c' ];
for ( var i in arr ) {//i是0,1,2,相当于数组是json的特殊形式,前面默认有键0,1,2,3
alert( arr[i] );
}
</script>
</head> <body>
</body>
</html>
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title> <script> var arr = [ 1,2,3 ];//2中形式差不多
var arr = new Array(1,2,3); //对象的定义方式
alert( arr ); var arr = new Array();
arr[1] = 123; //动态添加数据 var arr = new Array(3);//3表示长度是3
var arr = [3];//长度是1 var arr = new Array('3');
alert( arr.length );//长度是1 var arr = [ 'aaa',2,3 ];
alert( arr.length ); //
arr.length = 1;//数组长度可写,长度1则把后面的去掉了。
arr.length = 0;//长度是0,快速清空数组。
arr = [];//数组重新复制为空,也是清空数组,效率比length=0效率更高。
alert( arr ); var str = 'aaaaa';
// str.length = 1; 字符串的length属性是不可写的
alert(str); </script> <script> var arr = [ 1,2,3 ];
alert( arr.push( 'abc' ) ); //数组后面添加,push返回值是数组的长度。
alert( arr );
alert( arr.unshift( 0 ) ); //前面添加, IE 6 7 不支持 unshift 返回值
// alert( arr );
</script> <script> var arr = [ 'TM', '钟毅', '张森', '杜鹏', 'Leo' ];
alert( arr.pop() );//后面删除一个,返回值的删除的元素
alert( arr );
alert( arr.shift() );//前面删除,返回值是删除的元素
alert( arr );
</script> <script>
var arr = [ 'TM', '钟毅', '张森', '杜鹏', 'Leo' ];
arr.unshift(arr.pop());//后面删除一个前面添加
arr.push(arr.shift())//删除第一个添加到末尾
alert( arr );
</script> <script> var arr = [ 'TM', '钟毅', '张森', '杜鹏', 'Leo' ];
// splice :删除、替换、添加
arr.splice( 1 , 2 )//从第1个位置开始删除2个
alert(arr.splice( 1 , 2 ))//返回被删除的
arr.splice( 1 , 1, 'aaa')//从第1个位置开始替换1个aaa
arr.splice( 0, 2, '莫涛 or 钟毅' );//从0开始替换2个成莫涛 or 钟毅,变成[ '莫涛 or 钟毅', '张森', '杜鹏', 'Leo' ]
alert( arr.splice( 1 , 1, 'aaaaaa' ) );//返回被删除的
arr.splice( 1, 0, '钟毅媳妇儿~', '钟毅媳妇们~' ) ;//第一个位置开始,这个位置不删除也不替换,前面添加,[ 'TM','钟毅媳妇儿~', '钟毅媳妇们~', '钟毅', '张森', '杜鹏', 'Leo' ]
alert( arr.splice( 1, 0, '钟毅媳妇儿~', '钟毅媳妇们~' ) );//什么都没有删除就都没有
alert( arr ); //数组去重
var arr = [ 1,2,2,4,2,1,3,4 ];
for ( var i=0; i<arr.length; i++ ) {
for ( var j=i+1; j<arr.length; j++ ) {
if ( arr[i] == arr[j] ) {
arr.splice( j, 1 );
j--;
}
}
}
alert( arr );
</script> <script>
//快速排序,希尔排序,冒泡,归并,选择,插入,sort用的是
var arr = [ 'c', 'd', 'a', 'e' ];
arr.sort();
alert( arr ); var arr2 = [ 4,3,5,5,76,2,0,8 ];
arr2.sort();
alert( arr2 );//0,2,3,4,5,76,8,默认加引号,按照字符串排序
arr2.sort(function ( a, b ) {//匿名函数,从数组随机抽出2个数a,b,a-b(76-2=74为正数则交换位置,负数不交换位置,为0则不动)
return a - b;//从小到大,b-a从大到小,
});
alert( arr2 ); var arrWidth = [ '345px', '23px', '10px', '1000px' ];
arrWidth.sort(function ( a, b ) {
return parseInt(a) - parseInt(b);
});
alert( arrWidth ); </script> <script>
//打乱顺序
var arr = [ 1,2,3,4,5,6,7,8 ];
arr.sort(function ( a, b ) {
return Math.random() - 0.5;
});
alert( arr );
alert( Math.random() );
</script> </head>
</head> <body>
</body>
</html>
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title> <script>
//随机函数
alert( Math.round(3.4) );//round() 4舍5入
Math.random() //0~1
Math.round(Math.random());//0、1
//0~10
alert( Math.round(Math.random()*10) );
// 5~10
alert( Math.round( Math.random()*5 + 5 ) );
// 10~20
alert( Math.round( Math.random()*10 + 10 ) );
// 20~100
alert( Math.round( Math.random()*80 + 20 ) ); // x ~ y
var x = 3;
var y = 49;
// alert( Math.round( Math.random()*(y-x) + x ) ); // 0~x
// alert( Math.round( Math.random()*x) ); // 1~x ceil向上取整
alert( Math.ceil( Math.random()*x) ); // 课上小练习:
// 随机产生 100 个从 0 ~ 1000 之间不重复的整数
// var str = 'aaasdlfjhasdlkfs';
// indexOf('s') —— 为数组编写该方法:indexOf('img/1.jpg') </script> <script>
//concat 连接数组
var arr1 = [ 1,2,3 ];
var arr2 = [ 4,5,6 ];
var arr3 = [ 7,8,9 ];
arr1.concat(arr2);
alert( arr1.concat( arr2, arr3 ) ); var arr1 = [ 1,2,3,4,5,6 ];
arr1.reverse();//反转
alert( arr1 ); var str = 'abcdef';
alert(str.split('').reverse().join(''));//split('')字符转成数组,join('')数组转成字符串,数组元素通过''链接在一起
</script> </head> <body>
</body>
</html>

js01----json,数组的更多相关文章

  1. 文件缓存(配合JSON数组)

    1.  写入缓存:建立文件夹,把list集合里面的数组转换为JSON数组,存入文件夹2.  读取缓存:把JSON数组从文件夹里面读取出来,然后放入list集合,返回list集合 private fin ...

  2. Json数组追加数据

    背景:在做一个购物车的时候,点击第一个商品,然后存入一个json数组中,点击第二个商品的时候,又继续在json数组中追加,代码如下: <script type="text/javasc ...

  3. java 字符串转成 json 数组并且遍历

    当需要把一串字符串转成一个json 数组 ,并遍历其中的内容时. 首先要导入 net.sf.json.JSONArray和net.sf.json.JSONObject 两个jar 包 String s ...

  4. json数组的序列化和反序列化json数组的序列化和反序列化

    如题,我就不多说了,自己看代码的,很好理解 using System; using System.Collections.Generic; using System.Web; using System ...

  5. php返回json数组

    1.后端 //处理json数组中文问题 function arrayRecursive(&$array, $function, $apply_to_keys_also = false) { s ...

  6. JSON 数组的遍历解析

    刚遇到一个接接口任务,发现其中返回数据中,是个字符串数组,数组中就是单个json形式的内容,其实应该也可以称这种数据叫做json数组吧,只不过是字符串形式.而我需要的是将这种内容解析出来,取到对于ke ...

  7. 字符串集合或字符串数组转换成json数组

    字符串可以是List<String>类型的字符串集合,也可以是String[]类型的字符串数组,二者转换成JSON数组的方式没有什么不同.下面代码注意关键的部分即可(画红线部分). 1. ...

  8. Jquery调用Webservice传递Json数组

    Jquery由于提供的$.ajax强大方法,使得其调用webservice实现异步变得简单起来,可以在页面上传递Json字符串到Webservice中,Webservice方法进行业务处理后,返回Js ...

  9. JSON数组操作

    在jquery中处理JSON数组的情况中遍历用到的比较多,但是用添加移除这些好像不是太多. 今天试过json[i].remove(),json.remove(i)之后都不行,看网页的DOM对象中好像J ...

  10. select绑定json数组对象 asp.net

    ashx处理页 string JsonList = "["; IList<Models.Channel> ilist = BLL.ChannelManager.GetA ...

随机推荐

  1. CMake入门之创建一个基于PCL的最小工程

    最近在学习PCL,借助Cmake可省去繁琐的添加包含目录和依赖库操作. 一个典型的CMakeLists.txt内容通常为: cmake_minimum_required(VERSION 2.6 FAT ...

  2. T_SQL 字符串函数

    字符串函数用于处理列中的数据值,通常属于字符型的数据类型. 1.ASCLL(character),将具体字符转换为相应的整数(ASCII)代码,结果为正数. 例:select  ASCII('A'), ...

  3. ML words

    samples:样本 multi-dimensional entry / multivariate data:多属性记录 features:特征,属性 supervised learning:监督学习 ...

  4. [BJWC2011]禁忌 AC 自动机 概率与期望

    #include<cstdio> #include<algorithm> #include<cstring> #include<string> #inc ...

  5. centos6.9安装virtualenv并配置python2.7环境

    一. 安装python2.7 解压文件 tar -xvf Python-2.7.14.tar 进入源码包目录 cd Python-2.7.14 开始构建之前指定安装的目录 默认会被安装进 /usr/l ...

  6. NodeJS学习笔记 进阶 (13)Nodejs进阶:5分钟入门非对称加密用法

    个人总结:读完这篇文章需要5分钟,这篇文章讲解了Node.js非对称加密算法的实现. 摘录自网络 地址: https://github.com/chyingp/nodejs-learning-guid ...

  7. NodeJS学习笔记 进阶 (8)express+morgan实现日志记录(ok)

    个人总结:这篇文章讲解了Express框架中日志记录插件morgan的示例.读完这篇文章需要10分钟 摘选自网络 章节概览 morgan是express默认的日志中间件,也可以脱离express,作为 ...

  8. awk 基础的用法

    基本的awk执行过程#passwd文件的第二行的第一列和第二列[root@oldboyedu01-nb ~]# awk -F ":" 'NR==2{print $1,$2}' /e ...

  9. CSU 1374 Restore Calculation 数位DP

    题意: 给你三个数A, B, C(没有前导0),但是其中某些位不知道. 问A+B=C成立有多少种情况. 思路: 从最后一位往前推,枚举A, B的每一种情况,考虑进位和不进位两种情况. 代码: #inc ...

  10. mysql---union的使用方法

    union的作用非常easy用来合并两条sql的结果集 语法: SQL1 UNION SQL2 现有一张价格表 要求:求出价格低于2000和价格高于3000的商品.不能用or和not between- ...