`
lingbing777
  • 浏览: 11446 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

js学习-数组

阅读更多
var colors  =["rad","blue","grenn"] //定义一个数组
alert(colors[0]);      //显示第一项
colors[2]="black"      //修改第三项
colors[3]="brown"      //新增第四项

//数组length属性很有特点 -他不只是只读的,因此,通过设置这个属性,可以从数组的末尾移除项或者向数组添加新项,

var colors  =["rad","blue","grenn"] //定义一个数组
colors.length = 2 ;
alert(colors[2])    //undefined

//将length设置大于数组项数的值,则新增的一项会是undefined

var colors  =["rad","blue","grenn"] //定义一个数组
colors.length = 4 ;
alert(colors[3])    //undefined

//
var colors  =["rad","blue","grenn"] //定义一个数组
colors[99]= "black" ;
alert(colors.length);    //100

//显示数组值

var colors  =["rad","blue","grenn"] //定义一个数组
alert(colors.toString());     //red.blue,green
alert(colors.valueof());      //red.blue,green
alert(colors)                 //red.blue,green

//push() 方法可以接受任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度,而pop()则从数组末尾移除最后一项,减少数组的length值,然后返回删除的值
var colors =new Arraay()   //创建一个数组
var count =colors.push("red","blue"); //推入两项
alert(count);      //2

count =colors.push("black");        //在推一项
alert(count);     //3

var item =colors.pop();        //取出并移除最后一项
alert(item);      //black 
aler(colors.length);   //2

//shift() 移除第一项,返回移除的值

var colors =new Arraay()   //创建一个数组
var count =colors.push("red","blue"); //推入两项
alert(count);      //2

count =colors.push("black");        //在推一项
alert(count);     //3

var item =colors.shift();     //取出并移除第一项
alert(item)    //red
alert(colors.length);  //2

//unshift 与shift 相反 它能在数组前端添加任意个项返回新数组的长度,

var colors =new array();    //创建一个数组
var count =colors.unshift("red","green"); //推入两项
alert(count); //2
count =colors.unshift("black");  //推入另一项
alert(colors.length);  //3

var item=colors.pop();
alert(item);   //green
alert(colors.length);  //3


//
alert("10">5);    //true;
alert("10">"5");  //false


//reverse() 和sort()  排序


var values=[1,2,3,4,5];
values.reverse();
alert(values)   //5,4,3,2,1

var values =[0,1,5,10,15];
values.sort();
alert(values); //0,1,10,15,5  因为sort()是字符串比较


function coprare(value1,value2){
    if(value1<value2)
    {
       return -1;
    }else if(value1 > value2)
    {
       return 1;
    }else
     {
      return 0;
    }
}


var values =[0,1,5,10,15];
values.sort();
alert(values);  //0,1,5,10,15


//concat() 可以基于当前数组中创建一个新数组也就是创建当前数组的一个副本

var colors =["red","blue","green"];
var colors2 =colors.contcat("yellow",["black","brown"]);
alert(colors)  //red,blue,green
alert(colors2)  //red,blue,green,"yellow",black,brown


//slice()通过一个参数截取数组创建一个新数组
var colors=["red","green","blue","yellow","purple"];
var colors2=colors.slice(1);
var colors3=colors.slice(1,4);


alert(colors2) //green,blue,yellow,purple
alert(colors3) //green,blue,yellow

//splice()通过设置的值不同效果不一样
删除 splice(0,2) 删除数组中的前两项
插入 splice(2,0,"red","green"); //在数组位置2的地方添加两项
替换 splice(2,1,"red","green"); //替换数组位置2开始的两位为 red,green

var colrs =["red","green","blue"];
var removed =colors.splice(0,1);   //删除第一项
alert(colors);  //green,blue
alert(removed)  // red


removed =colors.splice(1,0,"yellow","orange"); //从位置1开始插入两项
alert(colors);   //green,yellow,orange,blue
alert(removed)   //返回的是一个空数组

removed =colors.splice(1,1,"red","purple");   //插入两项,删除一项
alert(colors)   //green,red,purple,orange,blue
aler(removed)   //yellow,返回数组中包含的一项

//indexof and lastindexof(); 位置从0开始计算

var numbers =[1,2,3,4,5,4,3,2,1];
alert(numbers.indexOf(4))  //3 在数组3的位置
alert(numbers.lastIndexOf(4)) //5
alert(numbers.indexOf(4,4));  //5
alert(numbers.lastIndexOf(4,4)) //3

var person ={name:"names"};
var prople ={[name:"names"]};

var morePeople=[person];  


alert(prople.indexOf(person));  //-1
alert(morePeople.indexOf(person)) //0


//迭代方法 函数不会修改数组中包含的值
every()对数组中的每一项运行给定的函数,如果该函数对每一项都返回true;则返回ture
filter()对数组中的每一行运行给定的函数,返回该函数会返回true的项组成数组
forEach()对数组中的每一项运行给定的函数,没有返回值
map();对数组中的每一项运行给定的函数,返回每次函数每次调用的结果组成数组
some();对数组中每一项运行给定的函数,如果该函数对任何一项返回teue,则返回true。
var numbers =[1,2,3,4,5,4,3,2,1];

var everyresult=numbers.every(fnction(item,index,array){
   return (item>2);
});
alert(everyreult)  //false

var someResult =numbers.some(function(item,index,array){
   return (item>2);
})

alert(someResult);  //true;

var filterResult=number.filter(function(item,index,array){
   return (item>2);
})

alert(filterResult);  //[3,4,5,4,3]

var mapResult =numbers.map(function(item,index,array){
   return(item*2);
})
alert(mapResult);   //[2,4,6,8,10,8,6,4,2]



numbers.forEach(function(item,index,array){
   //执行操作
})

reduce() reduceRight()的函数接收4个参数,前一个值,当前值,项的索引和数组对象

var  values =[1,2,3,4,5];
var sum =values.reduce(function(prev,cur,index,array){
   return prev+cur;
})

alert(sum)  //15

reduceRight()一样的效果,是从后面往前遍历循环
分享到:
评论

相关推荐

    前端学习笔记,做一个简单的网站-数组排序,学习代码

    前端学习笔记,做一个简单的网站-数组排序

    44-数组图片切换实例

    综上所述,"44-数组图片切换实例"涵盖了Web前端开发中的基础概念,包括数组操作、DOM操作、事件处理、动画效果以及性能优化等多个方面,是学习和实践前端技能的好例子。通过这个实例,开发者可以深入理解并掌握这些...

    03--数组.pptx

    【数组】是编程语言中非常基础且重要的数据结构,它允许我们存储一组具有相同类型的数据。在本课中,我们将深入理解数组的概念、创建...通过深入学习数组,我们可以更有效地管理和处理数据,提升代码的效率和可读性。

    17 - 数组排序.rar

    在JavaScript编程语言中,数组排序是一项基础且重要的操作。数组排序允许我们按照特定的规则重新组织数据,...通过深入学习和实践这些内容,开发者可以更好地理解和掌握JavaScript数组排序,从而在实际项目中灵活运用。

    js代码-数组对象根据某个值相同合并分组

    在JavaScript编程中,数组对象的处理是常见的任务之一。当我们需要根据数组中对象的某个特定属性值进行分组和合并时...在阅读和学习`main.js`文件时,应重点研究`reduce()`的实现逻辑以及如何根据特定属性值进行操作。

    js代码-数组扁平化包含递归,flat,toString map

    在JavaScript编程中,数组扁平化是一个常见的操作,它指的是将一个多维数组转换为一个单一的一维数组。这个过程对于处理嵌套数据结构时的数据预处理尤为重要。在本主题中,我们将深入探讨三种方法来实现数组扁平化:...

    JAVA实验报告-数组.docx

    Java作为一种广泛使用的编程语言,其数组操作是掌握Java语言的基础,也是理解其他高级数据结构的基石。...通过这些实验,学生不仅能够加深对Java数组操作的理解,也能够为学习更复杂的编程概念打下坚实的基础。

    PHP、web前端开发-数组的定义.pptx

    在学习数组的过程中,掌握其定义、操作(如添加、删除元素、遍历数组)以及如何与其他数据结构交互是非常关键的。无论是PHP还是前端开发,熟练运用数组可以提高代码的效率和可读性。因此,努力学习数组相关的知识,...

    PHP、web前端开发-数组的值的输出.pptx

    例如,输出JavaScript数组的值,你可以使用`console.log()`函数: ```javascript let arr3 = ["水星", "金星", "地球"]; console.log(arr3[2]); // 输出"地球" ``` 在学习过程中,理解数组的概念及其操作是至关重要...

    js代码-tmp--数组中的逆序对-改

    "js代码-tmp--数组中的逆序对-改"这个标题可能表示我们正在处理一个已经存在的JavaScript代码实现,该实现可能计算一个数组中的逆序对数量,但存在某些问题需要改进。这可能涉及到优化算法效率,修复错误,或者改进...

    js代码-数组相关计算

    在JavaScript中,数组是一种强大的数据结构,用于存储和操作一系列有序的数据。本压缩包文件"js代码-数组相关计算"包含两个文件:main.js...通过阅读和学习这个文件,你可以进一步提升JavaScript编程中处理数组的能力。

    js代码-数组方法练习001

    本练习主要关注JavaScript中的数组方法,通过`main.js`文件中的实践代码来深入理解这些方法的使用。`README.txt`文件可能是对练习的简要说明或指导。下面我们将详细探讨JavaScript中的数组方法及其应用。 1. `push...

    js代码-数组filter测试

    在JavaScript中,数组的`filter()`方法是一个非常重要的功能,用于创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。这个方法在处理数据过滤、筛选、去重等场景时非常实用。让我们深入了解...

    js代码-数组操作实践

    在提供的`main.js`文件中,可能包含了具体实现这些数组操作的示例代码,而`README.txt`文件可能对这些示例进行了简要说明,学习时可以结合这两个文件加深理解。通过实践,你将更深入地掌握JavaScript中的数组操作。

    JavaScript-数组-循环-bloco-4.2

    在这个"JavaScript-数组-循环-bloco-4.2"的主题中,我们将深入探讨JavaScript中的几种常见循环结构以及它们在处理数组时的应用。 1. **for循环**: for循环是最基础的循环结构,适用于数组遍历。其基本语法如下: ...

    js代码-数组去重-indexOf

    "js代码-数组去重-indexOf"这个标题暗示我们将讨论一种利用`indexOf`方法实现的数组去重方案。`indexOf`方法是JavaScript数组的一个内置方法,用于查找指定元素在数组中的位置,如果找不到则返回-1。接下来,我们将...

    js代码-数组内两数相加等于某值

    在压缩包文件`main.js`中,可能包含了这个功能的具体实现,你可以通过查看源代码来学习和理解更多的细节。`README.txt`文件通常用于提供关于项目的基本信息和使用指南,如果你对这个功能的实现有疑问,可以查阅这个...

    js代码-数组key第一个转为大写

    在JavaScript编程中,数组是一种常用的数据结构,用于存储一系列有序的元素。...通过阅读`main.js`,你可以学习到实际的实现方式以及可能的优化技巧;而`README.txt`则可能提供关于如何运行和测试这段代码的信息。

Global site tag (gtag.js) - Google Analytics