您的位置:首页 > 其它

Array

2015-10-20 21:54 218 查看
1.双重for循环

用法举例://1.数组元素反序排列

var arr = [1,2,3,4,5,6,7,8,9],t; //控制行

for(var i = 0;i < arr.length-1; i++){ //控制列

for(var j = i+1;j < arr.length;j++){

if(arr[i]<arr[j]) {

t = arr[i];

arr[i] = arr[j];

arr[j] = t;

}

}

}console.log(arr);

//输出结果:[9, 8, 7, 6, 5, 4, 3, 2, 1];

//2.求10到100之间的素数

for(var i = 10;i <= 100;i++){

var isprime = true; //定义一个用于判断的变量

for(var j = 2;j <= i-1;j++){

if(i % j == 0){ //判断是否为素数,

若i%j=0,则不是素数,

执行isprime = false;

isprime = false;

break;

}

}if(isprime){ //若是素数,则输出i

console.log(i);

}

}

2.数组

1)//定义数组并赋值的两种方式

var arr = [1,2,3,"4",true];

var arr = new Array(1,2,3);

arr.length //描述数组长度或者说数组中有几个元素。

index:索引。即元素在数组中的位置,从0开始。留意数组下标越界的问题。

2)Array的用法举例:

//数组元素反序

var arr = [1,2,3,4,5,6];

var arr1 = ["a","b","c"];

arr.reverse();

console.log(arr);//输出结果:[6, 5, 4, 3, 2, 1]

2.1)//移除数组中第一个元素并将其值返回

arr.shift();

console.log(arr); //输出:[2, 3, 4, 5, 6]

2.2)//移除数组中最后一个元素并将其值返回

arr.pop();

console.log(arr); //输出:[1, 2, 3, 4, 5]

2.3)//将指定元素插入到数组开始位置

arr.unshift("a","f");

console.log(arr); //["a", "f", 1, 2, 3, 4, 5, 6]

console.log(arr.unshift("a","f"));//输出arr的length;

2.4)//将指定元素插入到数组结尾位置

arr.push("ok");

console.log(arr); //输出:[1, 2, 3, 4, 5, 6, "ok"]

console.log(arr.push("怕怕的"));//显示arr的length;

2.5)//将一个数组放到另一个数组后面,合并为一个数组并返回

console.log(arr.concat(arr1));//

[1, 2, 3, 4, 5, 6, "a", "b", "c"]

2.6)splice(开始位置,要删除几个,传入的参数<可以为多个>)

arr.splice(3,3,"明天","你好");

console.log(arr); //输出:[1, 2, 3, "明天", "你好"]

2.7)slice(start,end) //显示结果不包括end对应的元素,end为可选项

console.log(arr.slice(3,5)) //输出:[4, 5]

3.string

1)var str = "abakfj";

2)用法举例

基本用法:

2.1)indexOf //第一次出现的字符串的索引,显示结果-1时,表示该字符串不出现在str中

2.2)lastIndexOf //最后一次出现的字符串的索引

2.3)substring(start,end) //拆分字符串用,结果不包括end,此处end为必选项

2.4)toUpperCase:大写

toLowerCase:小写

2.5)slice(start,end):拆分字符串,可传负数

2.6)split:将一个字符串分割

综合案例:

1.//提取字符串中数字

var str = "asd12waed230sad525sad1";

var arr = []; //定义一个数组用来存放数字

var tem = ""; //定义接收数字的变量

for(var a = 0;a < str.length;a++ )

{

if(!isNaN(str.charAt(a))) //判断是否为数字

{

tem+=str.charAt(a);

}else{

if(tem){

arr.push(tem);

tem="";

}

}

}

if(tem){

arr.push(tem);

}

console.log(arr);

//输出:["12", "230", "525", "1"]

2.//提取字符串并返回

var str1 = "1578729975@qq.com";

方法1:if(str1.indexOf("@") != -1 && str1.indexOf(".") != -1){

var ename = str1.substring(0,str1.indexOf("@"));

//"1578729975"

var ename = str1.substring(str1.indexOf("@")+1,str1.indexOf("."));

//"qq"

var usbd = str1.substring(str1.indexOf(".")+1,str1.length);

//"com"

}

console.log(ename+"@"+nusd+"."+usbd);

方法2:var arr1 = str1.split("@");

//arr1 = [1578729975, qq.com]

console.log(arr1[0]+"@"+arr1[1].split(".")[0]+"."+arr1[1].split(".")[1])

//输出:1578729975@qq.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: