( ! ) Warning: include(): http:// wrapper is disabled in the server configuration by allow_url_include=0 in D:\www\up\js\array.php on line 14 | ||||
---|---|---|---|---|
Call Stack | ||||
# | Time | Memory | Function | Location |
1 | 0.0000 | 365200 | {main}( ) | ...\array.php:0 |
( ! ) Warning: include(http://pub.houheaven.com/Nav02/Nav_deep2.htm): failed to open stream: no suitable wrapper could be found in D:\www\up\js\array.php on line 14 | ||||
---|---|---|---|---|
Call Stack | ||||
# | Time | Memory | Function | Location |
1 | 0.0000 | 365200 | {main}( ) | ...\array.php:0 |
( ! ) Warning: include(): Failed opening 'http://pub.houheaven.com/Nav02/Nav_deep2.htm' for inclusion (include_path='.;C:\php\pear') in D:\www\up\js\array.php on line 14 | ||||
---|---|---|---|---|
Call Stack | ||||
# | Time | Memory | Function | Location |
1 | 0.0000 | 365200 | {main}( ) | ...\array.php:0 |
信息:原创2014-08-180 次阅读0 个评论
标签:后天堂向上,网站制作,自学教程,网站技术,javascript,javascript数组
创建:var arr=[1,2,3,4];
输出:alert(arr);
属性
名称 | 描述 |
---|---|
length | 数组长度 |
方法
名称 | 描述 | 实例 |
---|---|---|
.toString() | 将数组内容以字符串的形式输出 | 暂无 |
.valueOf() | 将数组内容以字符串的形式输出 | 暂无 |
.reverse() | 数组排序,由大到小 | 暂无 |
.sort() | 数组排序,由小到大 | 暂无 |
.join(str) | 修改数组元素默认分隔符(,),方法返回值是字符串,数组不变 | 实例 |
var arr=[1,2,3,4]; alert(arr.join("*")); // 输出 1*2*3*4 alert(arr.join("|")); // 输出 1|2|3|4 alert(arr.join("___")); // 输出 1___2___3___4 alert(arr); // 输出 1,2,3,4 |
||
.push(value) | 栈方法(后进先出),在数组最后添加一个或多个元素,方法返回数组的最新长度 | 实例 |
var arr=["a","b","c"]; alert(arr); // 输出 a,b,c alert(arr.push("d")); // 输出 4 alert(arr); // 输出 a,b,c,d alert(arr.push("e","f")); // 输出 6 alert(arr); // 输出 a,b,c,d,e,f |
||
.pop() | 栈方法(后进先出),移除数组最后一个元素,方法返回移除的元素 | 实例 |
var arr=["a","b","c","d"]; alert(arr); // 输出 a,b,c,d alert(arr.pop()); // 输出 d alert(arr); // 输出 a,b,c alert(arr.pop()); // 输出 c alert(arr); // 输出 a,b |
||
.unshift() | 队列方法(先进先出),在数组最前添加一个或多个元素,方法返回数组的最新长度 | 实例 |
var arr=["a","b","c"]; alert(arr); // 输出 a,b,c alert(arr.unshift("1")); // 输出 4 alert(arr); // 输出 1,a,b,c alert(arr.unshift("2","3")); // 输出 6 alert(arr); // 输出 2,3,1,a,b,c 注意:此方法在 IE 浏览器的低版本中不兼容,能添加元素,但无返回值。 |
||
.shift() | 队列方法(先进先出),移除数组最前一个元素,方法返回移除的元素 | 实例 |
var arr=["a","b","c","d"]; alert(arr); // 输出 a,b,c,d alert(arr.shift()); // 输出 a alert(arr); // 输出 b,c,d alert(arr.shift()); // 输出 b alert(arr); // 输出 c,d |
||
.concat() | 创建新数组,在当前数组后面添加若干元素或数组而形成新的数组,原数组不变 | 实例 |
var arr1=[1,2,3]; var arr2=arr1.concat(4,5); var arr3=arr1.concat([6,7]); alert(arr1); // 输出 1,2,3 alert(arr2); // 输出 1,2,3,4,5 alert(arr3); // 输出 1,2,3,6,7 |
||
.slice(start,end) | 创建新数组,从当前数组中截取一部分元素创建新数组,原数组不变 | 实例 |
var arr1=[1,2,3,4,5]; var arr2=arr1.slice(2); var arr3=arr1.slice(2,4); alert(arr1); // 输出 1,2,3,4,5 alert(arr2); // 输出 3,4,5 alert(arr3); // 输出 3,4 |
||
.splice(start,len,str) | 创建新数组,从当前数组中截取一部分元素创建新数组,原数组改变 | 实例 |
// ================================ 删除用法 =================================== var arr1=[1,2,3,4,5]; var arr2=arr1.splice(0); // 全部截取 alert(arr1); // 输出 alert(arr2); // 输出 1,2,3,4,5 var arr1=[1,2,3,4,5]; var arr2=arr1.splice(2); // 如果只填一个参数,那么截取开始位置为0,所填参数为截取长度 alert(arr1); // 输出 1,2 alert(arr2); // 输出 3,4,5 var arr1=[1,2,3,4,5]; var arr2=arr1.splice(2,1); alert(arr1); // 输出 1,2,4,5 alert(arr2); // 输出 3 // ================================ 插入用法 =================================== var arr1=[1,2,3,4,5]; var arr2=arr1.splice(2,0,"a"); // 第二参数(截取长度)为0,就是在插入用法 alert(arr1); // 输出 1,2,a,3,4,5 alert(arr2); // 输出 // ================================ 替换用法 =================================== var arr1=[1,2,3,4,5]; var arr2=arr1.splice(2,1,300); // 第二参数(截取长度)为1,就是在替换用法 alert(arr1); // 输出 1,2,300,4,5 alert(arr2); // 输出 3 |
数组的排序有时候并不能正确执行,比如下面的数组中出现了一位数与两位数共存的情况,这时候数组可能会按照字符串的比较进行排序,因此,数组的排序结果自然不是我们想要的。
var arr=[2,10,4,18,3];
alert(arr.sort());// 输出 10,18,2,3,4
alert(arr.reverse());// 输出 4,3,2,18,10
怎样解决这个问题呢?Javascript 开发文档给出了答案,那就是给排序函数添加回调函数,具体操作如下:
function Compare(v1,v2)
{
switch(true)
{
case v1<v2 : return -1; break;
case v1==v2 : return 0; break;
case v1>v2 : return 1; break;
}
}
var arr=[2,10,4,18,3];
alert(arr.sort(Compare));// 输出 2,3,4,10,18
alert(arr.reverse());// 输出 18,10,4,3,2