breakpoints 2020-05-17
对象(Object)在编程语言中是一个比较抽象、牵涉内容非常多的概念。对于JavaScript来说,对象可以是一个变量、一个数据结构、或是一个函数。对象既表示客观世界问题空间中的某个具体的事物,又表示软件系统解空间中的基本元素。
在软件系统中,对象具有唯一的标识符,对象包括属性(Properties)和方法(Methods)。属性就是需要记忆的信息,方法就是对象能够提供的服务。
JavaScript语言自带许多封装好的对象(Array、Math多大),需要在学习JavaScript语法知识时加以掌握。本文讲解利用花括弧“{}”对象建立和操作统计数据结构,并结合上文介绍的数组知识,学习体验JSON数据结构。
导读:
var aArr = new Array(); var bArr = new Array(10); var cArr = new Array("first", "second", "third");
var valArr = [23, 45, 41, 87]; var strArr = ["first", "second", "third"];
掌握JS数组对于网上统计数据处理致关重要。在银河网络统计学平台中,一般使用JS数组直接量方式表达和处理统计数据。
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]]]; //混合数组
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开始
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;
console.clear(); var arr = [23,45,67,12,33]; arr.push(100,200); //添加数据到结尾 arr.unshift(200,100); //添加数据到开始 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,...:要插入(或删除)的新元素项
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 = arr1.concat(arr2,arr3); //将多个数组连接为一个数组,返回连接好的新的数组 arr = arr1.concat(arr2,100,200); arr = arr1.concat(100,200,arr2,200,100); arr = arr1.concat("myArray",arr2); console.log(arr);
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 = arr2.reverse(); //反转元素(最前的排到最后、最后的排到最前) console.log(arr3.reverse()); //输出arr3的倒序 var arr5=["George","John","Thomas","James","Adrew","Martin"]; arr5.sort(); //直接按英文字母顺序排序 console.log(arr5);注:arrNew = arrOld.sort()这行代码运行后,数组arrOld同时被排序,原数组的结构被打乱。为了保留原数组,可先用这行代码arrCopy = arrOld.slice(0)将数组arrOld备份到数组arrCopy中保留。arrNew = arrOld.reverse()同理。
console.clear(); var arr, str; var arr1 = [2,4,7,1,3]; var arr2 = [2,9,6]; var arr3 = [3,6,5,3]; arr = arr1.concat(arr2,arr3); //连接两个或更多的数组,返回新数组 arr = arr1.slice(1,4); //按指定起始下标返回数组片段 str = arr1.toString(); //把数组转换为字符串 str = arr1.join(":"); //返回指定分隔符的字符串 arr1.pop(); //删除数组最后一个元素 arr1.push(9,9,9); //向数组的末尾添加一个或更多元素 arr1.reverse(); //颠倒数组中元素的顺序 arr1.sort(); //对数组的元素进行正序排序 arr1.shift(); //删除第一个元素并返回数组 arr1.unshift(8,8,8); //向数组的开头添加一个或更多元素 arr1.splice(1,2,7,7); //删除元素,并向数组添加新元素 console.log(arr);
本文只介绍了JS数组的基本用法,当我们循序学完函数、对象等知识后,“数组进阶”还将进一步介绍JS数组的其它强大功能,从而满足承载和处理统计数据的要求。
提示:本页中JS脚本代码可复制粘贴到JS代码运行窗口调试体验;?文本编辑快捷键:Ctrl+A - 全选;Ctrl+C - 复制; Ctrl+X - 剪切;Ctrl+V - 粘贴