JavaScript中常用的API

JS的API

如有不全点文档查找: https://www.runoob.com/jsref/jsref-obj-array.html

一、数组API

1.toString( )

将数组转为字符串

2.join( )

将数组转为字符,默认按照逗号分割,可以指定分隔符

3.concat(arr2,arr3…)

拼接多个数组,返回拼接后的结果,原数组不变

4.reverse( )

翻转数组元素,返回翻转后的数组,原数组发生变化

5.slice(start,[end])

截取数组

  • start 为开始下标
  • end为结束下标 不包含end本身
  • end为空时 会截取到最后
  • 如果下标为负数表示倒数
  • 返回截取的数组,原数组不变
// 创建数组,包含a~h,每个字母一个元素,分别截取出bc,f;再将两部分拼接拼成一个新的数组
var arr = ['a','b','c','d','e','f','g'];
        console.log(arr.slice(1,3));
        console.log(arr.slice(-2,-1));
        console.log(arr.slice(-2,-1).concat(arr.slice(1,3)));

6.splice(start,[count],[v1],…)

删除数组元素

  • start开始删除的下标
  • count删除的长度
  • count为空时 删除到最后
  • 下标为负数表示倒数
  • v1,…表示删除后要补充的元素
  • 返回删除的元素,原数组会发生变化
// 创建数组,包含a~h,每个字母是一个元素,删除cd替换h为m 在下标为1的位置插入z
var arr = ['a','b','c','d','e','f','g','h'];
        console.log(arr.splice(2,2));
        console.log(arr.splice(-1,1,'m'));
        console.log(arr.splice(1,0,'z'));
        console.log(arr);   // ['a', 'z', 'b', 'e', 'f', 'g', 'm']

7.sort( )

对数组进行排序,默认是按照首个字母的Unicode码排列

        var arr = [23,9,78,6,45];
        // 默认是按照首个字符的Unicode编码排列
        // arr.sort()
        arr.sort( function(a, b) {
            // a b 每次取出两个数字 
            // 从小到大 
            return a - b;
        });
        // 原数组会发生变化
        console.log(arr);

8.push( )

在数组末尾添加元素,返回数组的长度,原数组会发生变化

9.pop( )

删除数组末尾的一个元素,返回删除的元素,原数组会发生变化

10.unshift( )

在数组开头添加元素,返回数组的长度,原数组会发生变化

11.shift( )

删除数组开头的一个元素,返回删除的元素,原数组会发生变化

11.indexOf( )

检测数组中是否含有某个元素,存在返回下标 不存在返回-1

// 创建一个数组 包含爱国福、和谐福;如果不包含敬业福,则把敬业福添加到数组
var arr = ['爱国福','和谐福'];
            if(arr.indexOf('敬业福') === -1) {
                arr.push('敬业福')
            }
        console.log(arr);

二、字符串API

1.length 获取字符串的长度

2.charAt( )

获取下标对应的字符,也可以使用数组的格式 字符串[下标]

// 统计出一个字符串中哪一个字符出现的次数最多,一共几次
var str = 'javascript';
       for(var i = 0,count=0;i < str.length;i++){
           console.log(str[i]);
           if(str[i] === 'a') {
               count++;
           }
       }
       console.log(count);

3.indexOf( )

检查字符串是否含有某个字符串,返回的是找到第1个下标 找不到返回-1

// 邮箱中是否有@符号
var str = 'abc23#tedu.cn';
        if(str.indexOf('@') === -1){
            console.log('非法邮箱');
        }

4.lastIndexOf( )

检查字符串中是否含有某个字符串,返回的是找到的最后一个下标,找不到返回-1

5.slice(start,[end])

截取字符串

  • start开始的下标
  • end结束的下标
  • 不包含end这一项;end为空会截取到最后
  • 下标为负数表示倒数

6.toUpperCase( )

将英文字母转大写

7.toLowerCase( )

将英文字母转小写

8.split( )

将一个字符串按照指定的字符转为数组

三、Math对象

PI 获取圆周率

abs() 绝对值

ceil() 向上取整

floor() 向下取整

round() 四舍五入取整

pow(x,y) 计算x的y次方

max() 查找一组数字最大值

min() 查找一组数字最小值

random() 获取随机数 范围0~1之间

// 获取圆周率 PI
        console.log( Math.PI );
        // 绝对值 abs()
        console.log(Math.abs(-10));
        // 向上取整 ceil()
        console.log(Math.ceil(-1.3));
        // 向下取整 floor()
        console.log(Math.floor(-1.3));
        // 四舍五入取整 round()
        console.log(Math.round(1.5));
        // 次方 pow()
        console.log(Math.pow(5,3));
        // 查找一组数字最大值 max()
        console.log(Math.max(23,9,6,4,25,78));
        // 查找一组数字最小值 min()
        console.log(Math.min(23,9,6,4,25,78));
        // 获取随机数 random()
        console.log(Math.random());

四、Date对象

1.创建Date对象

new Date('2023/2/27 10:40:30');
new Date(2023,2,27,10,20,30);  // 第2个参数月份的值是0~11对应1~12月
new Date(); // 存储的是当前系统的时间
new Date(1680000000000);    // 存储的是距离计算元年(1970-1-1 0:0:0)毫秒数,会产生一个具体的日期时间  1秒 = 1000毫秒

2.Date对象转为本地字符串

tolocaleString()   // 存在兼容性问题,不同的JS解释器下显示有差别,只能用于开发调试阶段

3.获取Date对象存储的值

getFullYear();    // 获取年份   
getMonth();       // 获取月份 0~11 
getDate();        // 获取日期       
getHours();       // 获取日期       
getMinutes();     // 获取分       H
getSeconds();     // 获取秒      
getMilliseconds();// 获取毫秒       
getDay();         // 获取周几  0~6   日~六 
getTime();        // 获取时间戳

Date.now();     // 获取当前时间的时间戳   

练习:创建Date对象,存储当前系统时间,获取存储的值,最后打印以下效果
‘今天是xxxx年xx月xx日 星期x’
说明:星期的值使用汉字格式 日~六

var d = new Date()
var year = d.getFullYear()
var month = d.getMonth() + 1
var date = d.getDate()
var hour = d.getHours()
var minute = d.getMinutes()
var second = d.getSeconds()
var day = d.getDay()  //范围0~6
// 如果秒钟小于10,在前拼接0,否则正常显示
second = second<10 ? '0'+second : second;
// 创建数组,包含日~六,下标范围0~6
var arr = ['日', '一', '二', '三', '四', '五', '六']
// console.log(arr[day])
console.log(`今天是${year}${month}${date}${hour}${minute}${second}秒  星期${arr[day]}`);

练习:计算当前时间距离周末(2023/3/4)还有多久

var d1 = new Date();
        var d2 = new Date('2023/3/4');
        // 计算相差的毫秒数
        var d = d2.getTime() - d1.getTime();
        // console.log(time);
        // 把相差的单位改成秒
        d = parseInt(d/1000); 
        // 计算相差的秒钟部分:去除含有的分钟(60秒),总的相差的秒钟%60
        var second = d%60;
        // 计算相差的分钟部分:去除总的秒数中含有的小时3600秒
        // 单位要求分钟
        var minute = parseInt(d%3600/60);   
        // 计算相差的小时部分:去除总的秒数中含有的天(24*3600)
        // 单位要求小时
        var hour = parseInt(d%(3600*24)/3600);
        // 计算相差的天的部分,直接将总的秒数单位转为天(24*3600)
        var day = parseInt(d/(24*3600));
        // document.write('距离周末(2023/3/4)还有'+ day+'天'+hour +'小时'+ minute+'分'+second +'秒');
        console.log(`距离周末(2023/3/4)还有${day}${hour}${minute}${second}`);

4.设置存储的值

setFullYear();    // 设置年份   
setMonth();       // 设置月份 0~11 
setDate();        // 设置日期       
setHours();       // 设置日期       
setMinutes();     // 设置分       
setSeconds();     // 设置秒      
setMilliseconds();// 设置毫秒       
setTime();        // 设置时间戳  会产生一个具体的日期时间1

5.拷贝一个Date对象

var d = new Date('2023/2/27 14:42:50');
        // 拷贝一份Date对象 把对象作为参数传递
        var d2 = new Date(d);

五、数字对象

new Number()   // 将一个数字包装为对象 存储在了堆内存中
Number()       // 将一个值转换为数字
toFixed(n)     // 保留小数点后n位

Boolean对象

new Boolean()// 将一个布尔型值包装为对象
Boolean()    // 将一个值强制转换为布尔型
!!// 将一个值隐式转换为布尔型
  • 13
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值