JavaScript统计数据处理(1)-数组
JavaScript是⼀种⼴泛使⽤⽹页编程语⾔,
在浏览器中运⽤JavaScript技术处理统计数据具有最佳的推⼴传播效果
数组是相同数据类型的数据按⼀定顺序排列的集合,组成数组的数据称为数组的元素。即数组是在程序设计中,为了处理⽅便,把具有相同类型的数据按有序的形式组织起来,这些按序排列的同类数据元素的集合称为数组。
在程序执⾏过程中,数组具有运⾏速度快、占⽤内存少、处理⽅便等优势。⼏乎所有编程语⾔中都有数组这⼀数据类型和相关原⽣函数。JavaScript(简称JS)也不例外,随着版本的不断更新发展,JS数组功能也在不断提升。统计学中不同类型统计数据(截⾯数据、时间序列和⾯板数据)都可以通过JS数组来处理。熟练掌握JS数组技术是进⼊统计数据编程领域的基础。
导读:
导读
1、数组定义的⽅式
I、使⽤构造函数
var aArr = new Array();
var bArr = new Array(10);
var cArr = new Array("first", "second", "third");
II、使⽤构造函数
var valArr = [23, 45, 41, 87];
var strArr = ["first", "second", "third"];
掌握JS数组对于⽹上统计数据处理致关重要。在银河⽹络统计学平台中,⼀般使⽤JS数组直接量⽅式表达和处理统计数据。
2、按静态⽅式创建数组
var arr1 = [23,45,67,12,33]; //⼀维数组
var arr2 = [[23,45,67],[21,12,33],[41,15,36]]; //⼆维数组(3⾏x3列)
var arr3 = [[23,45],[21,12,33,12],[41,15,36]]; //⼆维数组(不规则)
var arr4 = [[23,45],123,[41,[15,36]]]; //混合数组
3、按动态⽅式创建数组
var arr = [];  //空数组
arr[0] = 10;    //第1个元素为10
arr[1] = 12;
arr[2]=[]      //第3个元素为空数组
arr[2][0]=15;  //第3个数组元素的第1个元素为15
arr[2][1]=20;  //第3个数组元素的第1个元素为15
注:数组是⼀组有序的数据集合,其索引从0开始
4、数组元素的引⽤和修改
console.clear();  //清空输出⼯作台
var arr = [23,45,67,12,33];
var oVal = arr[1]; //引⽤:将数组第2个元素45赋值给变量oValue
arr[4] = 50;  //修改:将数组第5个元素33改为50
var arrs = [[23,45],123,[41,[15,36]]];
arrs[0][1]      //45
arrs[1]        //123
var val = arrs[2][1][0]  //15
console.log(val);    //输出指定变量
arrs[0][1] = 99;
arrs[1] = 100;
arrs[2][1][0] = 50;
5、添加和删除元素
console.clear();
var arr = [23,45,67,12,33];
arr.push(100,200);        //添加数据到结尾js数组方法总结
arr.unshift(200,100);    //添加数据到开始
console.log(arr);
arr.pop();                //删除原数组最后⼀项
arr.shift();              //删除原数组第⼀项
console.log(arr);
arr = [23,45,67,12,33];
arr.splice(3,0,100,200)  //插⼊100和200到67后⾯
console.log(arr);
arr = [23,45,67,12,33];
arr.splice(2,1,100,200) //将100和200插⼊45之后并删除67
console.log(arr);
注:splice函数对数组插⼊并删除元素。arr.splice(index,howmany,item1,item2,...)中,index:指定新元素插⼊(或删除)的位置;howmany:要删除的项⽬数量(howmany为 0,则为插⼊);item1,item2,...:要插⼊(或删除)的新元素项
6、数组的截取、拷贝和合并
console.clear();
var arr;
var arr1 = [2,4,7,1,3];
var arr2 = [3,5,6,2,7];
var arr3 = [4,5,1,7,9];
arr = arr1.slice(1,4);
//以数组的形式返回数组第1-3个元素,注意不包括第4个元素;
//如果省略第2个参数4,将复制第1个参数1之后的所有元素
arr = arr1.slice(0);
//返回数组的拷贝数组,注意是⼀个新的数组,不是指向
arr = at(arr2,arr3);
//将多个数组连接为⼀个数组,返回连接好的新的数组
arr = at(arr2,100,200);
arr = at(100,200,arr2,200,100);
arr = at("myArray",arr2);
console.log(arr);
7、⼀维数组排序
console.clear();
var arr,arr1,arr2,arr3,arr4;
arr = [2,4,7,1,3];
arr1 = arr.slice(0);
arr2 = arr.slice(0);
arr3 = arr1.sort(); //对数组元素排序(升序)
arr4 = verse(); //反转元素(最前的排到最后、最后的排到最前)
console.verse());  //输出arr3的倒序
var arr5=["George","John","Thomas","James","Adrew","Martin"];
arr5.sort(); //直接按英⽂字母顺序排序
console.log(arr5);
//两个⽐较的元素分别为a, b
var arr = [12,21,24,32,45,32,12,32,43];
//升序
arr.sort((a, b) => {
return a - b
})
console.log(arr)
//降序
arr.sort((a, b) => {
return b - a
})
console.log(arr)
//乱序
arr.sort((a, b) => {
return Math.random()*2 - 1;
})
console.log(arr)
注:arrNew = arrOld.sort()这⾏代码运⾏后,数组arrOld同时被排序,原数组的结构被打乱。为了保留原数组,可先⽤这⾏代码arrCopy = arrOld.slice(0)将数组arrOld备份到数组arrCopy中保留。arrNew = verse()同理。
8、数组常⽤⽅法总结
console.clear();
var arr, str;
var arr1 = [2,4,7,1,3];
var arr2 = [2,9,6];
var arr3 = [3,6,5,3];
arr = at(arr2,arr3);  //连接两个或更多的数组,返回新数组
arr = arr1.slice(1,4);  //按指定起始下标返回数组⽚段
str = String();  //把数组转换为字符串
str = arr1.join(":");  //返回指定分隔符的字符串
arr1.pop();  //删除数组最后⼀个元素
arr1.push(9,9,9);  //向数组的末尾添加⼀个或更多元素
arr1.sort();  //对数组的元素进⾏正序排序
arr1.shift();  //删除第⼀个元素并返回数组
arr1.unshift(8,8,8);  //向数组的开头添加⼀个或更多元素
arr1.splice(1,2,7,7); //删除元素,并向数组添加新元素
console.log(arr);
最后需要强调⼀下,JS数组的属性不多,最常⽤的设length属性,即返回数组元素总数。样例代码如下:
console.clear();
var arr, str;
var arr1 = [2,4,7,1,3];
var arr2 = [2,9,6];
console.log(arr1.length);  //5
console.log(arr2.length);  //3
本⽂只介绍了JS数组的基本⽤法,当我们循序学完函数、对象等知识后,“数组进阶”还将进⼀步介绍JS数组的其它强⼤功能,从⽽满⾜承载和处理统计数据的要求。
提⽰:本页中JS脚本代码可复制粘贴到调试体验;⽂本编辑快捷键:Ctrl+A - 全选;Ctrl+C - 复制; Ctrl+X - 剪切;Ctrl+V - 粘贴

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。