javascript数组

《javascript高级程序设计》

1:ECMAscript中的数组和其他语言中的数组的区别

   一:数组中每一项的类型

      ECMAscript中数组中每一项的类型任意

   二:数组的长度

      ECMAScript的数组的大小是可以动态调整的。

 

2:创建数组的方式

   一:对象字面量

<scripttype="text/javascript"> 

       var colors = ["red", "blue", "green"];//creates an array with three strings

       var names = [];                       //creates an empty array

       var values = [1,2,];                  //AVOID! Creates an array with 2 or 3 items

       var options = [,,,,,];                //AVOID! creates an array with 5 or 6 items

       

       alert(colors.length);    //3

       alert(names.length);     //0

       alert(values.length);    //2 (FF, Safari,Opera) or 3 (IE)

       alert(options.length);   //5 (FF,Safari, Opera) or 6 (IE)

   </script>

 

   二:Array构造函数

注意:够着函数根据传入的参数

一:创建n个数据项

二:只创建一个数据项

   <script type="text/javascript">

       

       var colors = new Array(3);     //create an array with three items

       var names = new Array("Greg"); //create an array with one item, the string "Greg"

 

       alert(colors.length);  //3

       alert(names.length);  //1

</script>

 

3:动态的增加数组中的数据项

一:使用一个大于数组中的项数的索引值

4:数组中length属性的特点(非只读)

  一:数组的末尾移除项

var colors =["red", "blue", "green"];    //creates an array with three strings

        colors.length = 2;

        alert(colors[2]);    //undefined

  二:数组的末尾添加项 

        var colors = ["red","blue", "green"];   //creates an array with three strings

        colors[colors.length] ="black";          //add a color

        colors[colors.length] ="brown";          //add anothercolor

 

        alert(colors.length);    //5

        alert(colors[3]);        //black

        alert(colors[4]);        //brown

 

5:数据项的拼接有哪些方法?

 toString()

valueOf()

join()

 

6: 数组中的栈方法

一:数据项的末端

push()

pop()

在数据结构中我们知道栈的实现主要是有两种方式,一:数组。二:链表。栈是实现算法的一个很基础的东西。

二:数据项的前段

shift()

unshift()

如果前段有了,后端也有了,就可以组合成队列了,或者说循环队列之类的。

 

7:排序方法

sort()

reverse()

reverse()和sort()方法的返回值是经过排序之后的数组。

 

8:操作方法

concat()在原来的数组项的基础上添加一些新的数据项

slice()以原有的数组创建一个新的数组

splice()对于数组中元素的操作(删除、插入、替换

 

9:位置方法

indexOf()

lastIndexOf()

这两个方法都返回要查找的项在数组中的位置,或者在没有找到的情况下返回-1.

可以利用数组直接量的方式去访问元素,重点是在查找上面。

 

10.迭代方法(对于数值中的每一项进行遍历。)

some vs every

    <script>

        var numbers = [1,2,3,4,5,4,3,2,1];

        var everyResult =numbers.every(function(item, index, array){

            return (item > 2);

        });

        alert(everyResult);       //false

       

        var someResult =numbers.some(function(item, index, array){

            return (item > 2);

        });

        alert(someResult);       //true

    </script>

 

    <script>

        var numbers = [1,2,3,4,5,4,3,2,1];

       

        var filterResult =numbers.filter(function(item, index, array){

            return (item > 2);

        });

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

    </script>

filter

var numbers =[1,2,3,4,5,4,3,2,1]; 

        var filterResult =numbers.filter(function(item, index, array){

            return (item > 2);

        });

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

map

        var numbers = [1,2,3,4,5,4,3,2,1];

       

        var mapResult =numbers.map(function(item, index, array){

            return item * 2;

        });

       

        alert(mapResult);   //[2,4,6,8,10,8,6,4,2]

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值