【Cxinny】js常用内置对象及方法

一、Array数组对象

  • push():在末尾添加一个或多个元素,并返回数组新长度
  • pop():在末尾删除一个元素,并返回被删除元素
  • unshift():在头部添加一个或多个元素,并返回数组新长度
  • shift():在头部删除一个元素,并返回被删除元素
  • concat():arr.concat(arr2) 数组合并,返回新数组
  • join():将数组每个元素用指定字符连接,返回新字符串,括号内不写,默认使用逗号
  • splice(index,num,value):可以删除指定位置指定数量的元素,并插入元素,并返回被删除元素组成的新数组
let arr1 = [1,2,34,322]
let arr2 = [3,4,9,0,5,3,643,6564,75,7,98,67]

// 没有参数,返回空数组
console.log(arr1.splice())
// 参数为0,删除全部元素
console.log(arr1.splice(0))
console.log(arr1)
// 
console.log(arr2.splice(1,3))
console.log(arr2)
//从倒数第二位开始删,删一个,省略则删到结尾
console.log(arr2.splice(-2,1))
console.log(arr2)
//插入一个
console.log(arr2.splice(-3,2,100000))
console.log(arr2)
// 插入多个
console.log(arr2.splice(-3,2,100000,200000,300000))
console.log(arr2)

//结果-----------------------------------------------------
> []
> [1, 2, 34, 322]
> []
> [4, 9, 0]
> [3, 5, 3, 643, 6564, 75, 7, 98, 67]
> [98]
> [3, 5, 3, 643, 6564, 75, 7, 67]
> [75, 7]
> [3, 5, 3, 643, 6564, 100000, 67]
> [6564, 100000]
> [3, 5, 3, 643, 100000, 200000, 300000, 67]
  • slice(start,end):指定位置截取,end不写则截取到末尾,start和end也可以是负数
  • indexOf(元素,开始的位置):查找元素,返回查询到的第一个元素下标后结束,若找不到则返回-1。但不能查询对象
  • lastIndexOf(元素,):查找元素,从后往前找,返回查询到的第一个元素下标后结束,若找不到则返回-1。但不能查询对象
  • Array.from(类似于数组的列表):转为数组,常用于获取Array.from(document.getElementsByTagName("div"))
  • forEach((item,index,arr)=>{ }):遍历数组,返回一个与原数组长度相等的新数组,item元素,index下标,arr数组自身
​let arr = [3,5,7,9,3,4,10,2];
var arr1 = arr.map((item,index,arr)=>{
    return item+10
})
console.log(arr1)

​
  • arr.sort():排序,仅能10以内数字,
let arr = [323,534,117,3329,3,40000000,10,2];
arr.sort((a,b)=>{
    //从小到大
    return a-b //> [2, 3, 10, 117, 323, 534, 3329, 40000000]
    //从大到小
    return b-a //> [40000000, 3329, 534, 323, 117, 10, 3, 2]
})
console.log(arr)

// -----------------------------------------
var arr=["n","c","g","h","a","j","y","k"];
arr.sort(function(a,b){   // 将字符排序
    return a.charCodeAt(0)-b.charCodeAt(0);  // a-z,> ["a","c","g","h","j","k","n","y"]
    // return b.charCodeAt(0)-a.charCodeAt(0);  // z-a,>["y","n","k","j","h","g","c","a"]
})
console.log(arr);
  • some():遍历数组,只要有一个满足条件就返回true,没有才返回false
var arr=[1,4,6,2,7,9,0];
var bool=arr.some(function(item,index,arr){
    return item>5;
});
console.log(bool); //true
  • every():遍历数组,全部满足返回true,只要有一个不满足都是false
var arr=[1,4,6,2,7,9,0];
var bool=arr.every(function(item,index,arr){
    return item>2;
});
console.log(bool);  // false
  • filter():过滤,把数组符合要求的返回新数组
var arr=[1,4,6,2,7,9,0];
var arr=arr.filter(function(item,index,arr){
    return item>5;
});
console.log(arr); //> [6, 7, 9]
  • reduce():遍历数组
let result = arr.reduce((sum,value)=>{
    sum += value
    return sum
},初始值)
  • Array.isArray():判断是不是数组

二、Math

  • π:Math.PI
  • 根号2:Math.SQRT2 //常量,不能改
  • Math.floor():向下取整
  • Math.ceil():向上取整
  • Math.round():四舍五入,但是负数的会转换为正数处理
  • Math.min(...values: number[]):最小值
  • Math.max(...values: number[]):最大值
  • Math.random():随机数,Math.random()*10+1 //随机1-10之间的任意数,要整数则用floor
  • 其他的方法

 三、String字符串

  • charAt():获取下标位置的字符
  • charCodeAt():把下标位置的字符转为Unicode编码
  • String.fromCharCode():Unicode编码转为字符串
  • str.concat():连接字符串
  • indexOf()、lastIndexOf():查找字符所在下标
  • replace():返回一个被修改的新字符串,只修改第一次被查找到的元素
  • slice(start,end):截取复制字符串,像上面数组,可以用负值
  • substring():跟slice类似,但不能用负数,可以逆向截取赋值
var str="abcdecf";
var s1=str.substring(2,4);
var s2=str.substring(4,2);
console.log(str); // > "abcdecf"
console.log(s1); // > "cd"
console.log(s2); // > "cd"
  • substr(下标,截取长度):截取字符串,下标可以是负值
  • split(分隔符):将字符串以分隔符分割,转换为数组
  • str.toLowerCase():转为小写
  • str.toUpperCase():转为小写

四、日期对象

  • 创建日期对象:new Date()
  • 获取时间戳:date.getTime();// 毫秒数,从1970年1月1日00:00:00到现在
var date=new Date(); 
console.log(date.getYear()); // 获取的年份是从1900年开始计算的
console.log(date.getMonth()+1); // 获取月份 从0开始
console.log(date.getDate());
console.log(date.getDay()); // 获取星期  从0开始  0就是星期日 1是星期1
console.log(date.getHours());
console.log(date.getMinutes());
console.log(date.getSeconds());
console.log(date.getMilliseconds());

// -------------------------------
> 122
> 11
> 4
> 5
> 9
> 59
> 16
> 345

可以设置日期

var date=new Date(); 
date.setFullYear(2021);
date.setMonth(12); // 1月,进位了年份+1 是从0开始的;
date.setDate(40); // 设置进位了
date.setHours(date.getHours() + 2); // 设置为现在时间的2小时后
date.getUTCFullYear(); // 凡是带有UTC都是格林尼治时间
date.toString(); // 直接转换为字符串
date.toLocaleString(); // 转换为本地(windows上)设置格式时间字符串
date.toUTCString(); // 转换为格林尼治时间字符串

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值