//数组去重
var a=[1,2,3,4,5,1,2,3,4,5];
for(var i=0;i<a.length;i++)
for(var j=i+1;j<a.length;j++)
{
if(a[i]==a[j])
a.splice(j,1);
}
console.log(a);
// var a=[1,1,2,2,3,3,3,3,4,4,4]上面这个算法无法计算,因为当比较相等时
a[i]=a[j],a.splice(j,1)方法将这个数相同,后面的数跟上来此时,a[j]这个数组的位置为A[J+1]的值,但是这个值因为已经在a[j]的位置上所以无法被判断。
for(var i=0;i<a.length;i++)
for(var j=i+1;j<a.length;j++)
{
if(a[i]==a[j])
{a.splice(j,1);
j--;//让其在判断A[J]的值是否要删除。
}
}
console.log(a);
数组的其他方法
splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。
/slice方法,从数组中提取元素
var a=[1,2,3,4,5,1,2,3,4,5];
//slice(start,end)方法。提取数组中的元素。
// var result=a.slice(0,5);
// var result=a.slice(1,-1);//负值数组末尾最后第二个。
// console.log(result);
//a.splice(1,2);//表示从数组a[1]开始提取2个元素。
a.splice(1,2,"hello");//删除a[1],a[2],并把hello字符串插入a[1]的位置。
console.log(a);
//concat()方法将多个数组连接在一起,并作为返回值返回
vara=[1,2,3,4,5,10,9,6,8];
varb=["hello","hi"];
// varresult=a.concat(b);//
// console.log(result);
// //join()方法,将数组转换为字符串连接在一起。
console.log(typeof a.join("/"));//"string"类型
console.log(a.join("/"));//"1/2/3/4/5/10/9/6/8"join(\)参数表示连接数组连接值。
//reverse()方法用来反转数组。
a.reverse();
console.log(a);//"8,6,9,10,5,4,3,2,1"
//sort()方法,对数组进行排序
//a.sort();
console.log(a);//"1,10,2,3,4,5,6,8,9是按照unicode编码排序的,英文可以很好的排序,数字需要调用回调函数
a.sort(function(a,b)
{
//returna-b;//升序排序 a-b大于0 则两个位置交换,其余的不交换,a,b表示数组前一个与后一个的值,a总是表示前面一个的值。
returnb-a ;//降序排序
}
)
console.log(a);
函数的方法call,apply方法。
function fun(){
console.log(this);
}
fun.call();//"[object Window]"
fun();//"[object Window]"
var a={};
fun.call(a);//"[object Object]"
fun.apply(a); //"[object Object]"
//this:对象
1:函数调用的时候this->window对象
2:方法调用的时候this->调用的对象;
3:构造函数 this->新对象;
4:call 和 apply 调用时候,指向参数中指定的对象;
Arguments(类数组对象)
arguments用来封装函数的实参,是一个类数组对象.
function fun(a,b){
console.log(arguments.length);//"2"
//arguments.length//表示实参的个数
console.log(arguments.callee);
//"function fun(a,b){
console.log(arguments.length);
//arguments.length//表示实参的个数
console.log(arguments.callee);
}
fun("1","2");
Date 时间对象
(1) Date 对象用于处理日期和时间。
创建一个Date对象
var a=new Date();//Sun Oct 29 2017 13:10:07 GMT+0800 (中国标准时间)
//使用构造函数创建一个Date对象。默认把当前的时间赋值给创建的对象
console.log(a);
var b=new Date("12/05/2016 11:10:10");//穿参数,我们注意参数的格式 月/日/年 时间;
console.log(b);
(2) Date对象的方法
1:getDay()方法,返回值为0~6;0表示周日,6表示周六;
2:getDate() ;//返回当前的天数
3:getMonth();//返回当前月份 0表示12月;
4:getTime()//返回时间戳;
时间戳是从1970年1月1日0分0秒到当前时间总共的毫秒数(1秒=1000毫秒);