javascript对象与方法

时间:2021-01-28 09:21:30

对象与方法

一、数组(Array)
1.使用new关键字创建数组
var box = new Array();                                     //创建了一个数组
个元素的数组
var box = new Array('李炎恢',28,'教师','盐城'); //创建一个数组并分配好了元素
2.以上三种方法,可以省略new关键字。
var box = Array();                                            //省略了new关键字
使用字面量方式创建数组
var box = [];                                                    //创建一个空的数组
var box = ['李炎恢',28,'教师','盐城'];                //创建包含元素的数组
个元素
var box = [,,,,,];                                               //同样,IE的会有识别问题
PS:和Object一样,字面量的写法不会调用Array()构造函数。(Firefox除外)。
  1. 使用索引下标来读取数组的值
alert(box[2]);                                                   //获取第三个元素
box[2] = '学生';                                               //修改第三个元素
box[4] = '计算机编程';                                     //增加第五个元素
  1. 使用length属性获取数组元素量
alert(box.length)                                               //获取元素个数
box.length = 10;                                               //强制元素个数
box[box.length] = 'JS技术';                               //通过length给数组增加一个元素
  1. 创建一个稍微复杂一点的数组
var box = [     
                                   {                                        //第一个元素是一个对象
                                          name : '李炎恢',
                                          age : 28,
                                          run : function () {
                                                 return 'run了';
                                          }
                                   },
                                   ['马云','李彦宏',new Object()],//第二个元素是数组
                                   '江苏',                                  //第三个元素是字符串
                                   25+25,                                 //第四个元素是数值
                                   new Array(1,2,3)                  //第五个元素是数组
];
alert(box);
个元素,超出即会发生异常。
二、一些方法
1.转换方法
          对象或数组都具有toLocaleString()、toString()和valueOf()方法。其中toString()和valueOf()无论重写了谁,都会返回相同的值。数组会讲每个值进行        字符串形式的拼接,以逗号隔开。
      join()方法使用不同的分隔符来构建这个字符串
var box = ['李炎恢', 28, '计算机编程'];
alert(box.join('|'));                                             //李炎恢|28|计算机编程
2.栈是后进先出,有push()和pop()方法
   队列是先进先出,有push()和shift()方法
3.重排序方法:
   1)reverse()逆向排序
   2)sort()从小到大
sort方法的默认排序在数字排序上有些问题,因为数字排序和数字字符串排序的算法是一样的。我们必须修改这一特征,修改的方式,就是给sort(参数)方法传递一个函数参数。这点可以参考手册说明。
function compare(value1, value2) {                    //数字排序的函数参数
       if (value1 < value2) {                                 //小于,返回负数
              return -1;
       } else if (value1 > value2) {                        //大于,返回正数
              return 1;
              return 0;
}
var box = [0,1,5,10,15];                                    //验证数字字符串,和数字的区别
alert(box.sort(compare));                                  //传参
4.操作方法
   1)concat()方法可以基于当前数组创建一个新数组。
   2)slice()方法可以基于当前数组获取指定区域元素并创建一个新数组。splice()主要用途是向数组的中部插入元素。
var box = ['李炎恢', 28, '盐城','计算机编程','江苏'];
var box2 = box.slice(1,3);                //这里不是从第1个位置取3个
alert(box2);                        //而是从第1个位置取到第3个位置
 
var box = ['李炎恢', 28, '盐城'];
var box2 = box.splice(0,2);            //这里表示从第0个位置取2个,
alert(box2);                    //而不是从第0个位置取到第2个位置
 
var box = ['李炎恢', 28, '盐城'];
var box2 = box.splice(0,2);            //这里表示从第0个位置取2个,
alert(box2);                    //而不是从第0个位置取到第2个位置
alert(box);
 
 
var box = ['李炎恢', 28, '盐城'];
var box2 = box.splice(1,0,'江苏','计算机编程');        //从第1个插入点插入元素,0表示不删除
alert(box2);
alert(box);
*/
 
var box = ['李炎恢', 28, '盐城'];            //替换
var box2 = box.splice(1,1,100);
alert(box2);
alert(box);