JavaScript_数组

/**
* 数组本身也是对象
* js中数组类似于java里的map容器 长度可随意改变 ,元素类型任意
*
*/
// var arr = new Array();
// var arr = [1,2,3,4,true ,‘abc‘ , new Date()] ;
// alert(arr.length);
// arr.length = 5 ;
// alert(arr.toString()); // [object object]

/**
* push 和 pop 方法
*/
//var arr = [new Date(),false] ;
//var result = arr.push(1,2,true); //push方法向数组中追加元素(返回值为新数组的长度)
//alert(arr);
//alert(result);
//var obj = arr.pop(); //从数组的尾部移除一个元素(返回值为移除的元素)
//alert(arr);
//alert(obj);

/**
* shift 和 unshift 方法
*/
//var arr = [1,2,3, true , new Date()];
//var r1 = arr.shift(); //从头部移除一个元素(返回移除的元素)
//alert(arr);
//alert(r1);
//var r2 = arr.unshift(10,false); //从头部插入多个元素(返回新数组的长度)
//alert(arr);
//alert(r2);

/**
* splice、slice 方法 (截取的方法)
* splice方法操作数组本身
* slice方法不操作数组本身
*
*/

// splice: 第一个参数 :起始位置
// 第二个参数 :表示截取的个数
// 第三个参数以后:表示追加的新元素个数

//var arr = [1,2,3,4,5];
//arr.splice(1,2,3,4,5); // 134545
//alert(arr);

// slice://返回截取的内容 //截取范围 (左闭右开区间)
//var arr = [1,2,3,4,5];
//var reuslt = arr.slice(2,4);
//alert(reuslt); //3,4

//操作数组的方法: concat join

//var arr1 = [1,2,3];
//var arr2 = [true , 4 , 5];

//var reuslt = arr1.concat(arr2); //合并粘连的操作(不操作数组本身)
//alert(reuslt);

//var result = arr1.join(‘-‘); //在每个元素之间加入内容(不操作数组本身)
//alert(arr1);
//alert(result);

/**
* sort排序
* reverse倒叙
*/
var arr1 = [5,2,1,4,3];
var arr2 = [10,2,4,1,7];

//arr1.sort();
//arr1.reverse(); //倒叙排序 是按照集合的位置进行倒叙的
//alert(arr1);
//arr2.sort();
//alert(arr2); // 1 10 2 4 7

function compare(value1 , value2){
if(value1 < value2){
return -1 ;
} else if(value1 > value2){
return 1 ;
} else {
return 0 ;
}
}
arr2.sort(compare);
alert(arr2);

时间: 2024-08-05 14:26:14

JavaScript_数组的相关文章

javaScript手记(01)

--------------------javaScript基础1.嵌入页面的方式 1.行间事件(主要用于事件): <input type="button" name="" onclick="alert('ok!');"> 2.页面script标签嵌入: <script type="text/javascript"> var a = '你好!'; alert(a); </script> 3.

JavaScript_引用类型①

[Object类型] 引用类型的值是引用类型的一个实例,在JavaScript中,引用类型是一种数据结构,用于将数据和功能组织在一起,引用类型有时也被称为对象定义,因此它是描述一类对象所具有的属性和方法 对象是某个特定类型的实例,新对象是用new操作符 后面跟构造函数创建的 [Object类型] Object类型是JavaScript中使用最多的一个类型,创建Object类型有两种方法 一:使用构造函数创建 1: var person=new Object(); 2: person.name="

[Javascript_库编写]创建自己的“JavaScript库”

一.编写JavaScript库要注意的问题   为了让自己的JS库构建的更加优雅.合理,我们编写JS库时要注意两方面的内容: 1.不要使用版本检测,而要使用能力检测 由于浏览器的类型和版本太多,以及不断的新的浏览器出现,我们不可能投入大量的时间和成本去实践检测各种版本的浏览器."浏览器检测"也叫"版本检测"通常被认为是一种错误的做法,浏览器检测的最佳实践是能力检测,通常也被称为对象检测,指的是在代码执行之前检测某个脚本对象or方法是否存在,而不是依赖于你对哪个浏览器

移除数组中第一个负数后的所有负数

scala> val a = ArrayBuffer[Int](1, 2,3, 5, -1, 2, -3, -5) a: scala.collection.mutable.ArrayBuffer[Int]= ArrayBuffer(1, 2, 3, 5, -1, 2, -3 , -5)   scala> :paste // Entering paste mode (ctrl-D tofinish)   var foundFirstNegative = false val keepIndexes

NumPy基础:数组和失量计算

NumPy : Numerical Python,是高性能科学计算和数据分析的基础包. 部分功能: ndarray:一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组: 用于对整组数据进行快速运算的标准数学函数(无需编写循环): 用于读写磁盘数据的工具以及用于操作内存映射文件的工具: 线性代数.随机数生成以及傅里叶变换功能: 用于集成C.C++.Fortran等语言编写的代码工具: 大部分数据分析应用关注的功能: 用于

Matlab - 求数组的零值与过零点索引

function zeroindex=pickzero(x)%找出数组的零值及过零点(正负相交处,可能偏离0)m = length(x);x1=x(1:m-1);x2=x(2:m);indz = find(x==0); %zero pointindzer = find(x1.*x2<0); %negative/positiven=length(indzer);for i=1:n if abs(x(indzer(i)))>abs(x(indzer(i)+1)) indzer(i)=indzer(

Java中数组的概念

1.什么是二维数组?有几种表达方式?分别是什么? 答:多维数组即数组的数组,即数组的元素也是数组. 例:int[] [] a = {{1},{1,2},{1,2,3}}; 有三种方式 1).int [] [] a;  2).int [] a1 [];  3).int a2 [] []; *强烈推荐用第1种,不容易混淆a的数据类型: 2.多维数组的创建过程是什么? 答: 例:int [] [] a = new int [2] []; a[0] = {1,2,3}; a[1] = {4,5,6};

ES6之主要知识点(六)数组

引自http://es6.ruanyifeng.com/#docs/array 1.扩展运算符(...) 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. 该运算符主要用于函数调用. function push(array, ...items) { array.push(...items); } function add(x, y) { return x + y; } var numbers = [4, 38]; add(...n

数组、字符串、集合

数组与集合的转换.数组与字符串的转换 ========数组变集合 String[] arr = {"abc","cc","kkkk"}; //把数组变成list集合有什么好处? /* 可以使用集合的思想和方法来操作数组中的元素. 注意:将数组变成集合,不可以使用集合的增删方法. 因为数组的长度是固定. contains. get indexOf() subList(); 如果你增删.那么会产生UnsupportedOperationExcepti