JavaScript的常用内置对象

JavaScript提供了很多常用的内置对象,包括数学对象Math、日期对象Date、数组对象Array以及字符串对象String等。

Math对象

Math对象的使用

Math对象用来对数字进行与数学相关的运算,不需要实例化对象,可以直接使用其静态属性和静态方法,Math对象的常用属性和方法如下表。
在这里插入图片描述

练习

使程序随机生成一个1~10之间的数字,并让用户输入一个数字,判断这两个数的大小,如果用户输入的数字大于随机数,那么提示“你猜大了”,如果用户输入的数字小于随机数,则提示“你猜小了”,如果两个数字相等,就提示“恭喜你,猜对了”,结束程序。

function getRandom(min,max){
    return Math.floor(Math.random()*(max-min+1)+min);
  
}
var random = getRandom(1,10);
while(true){
    var p = prompt("请输入猜的数字:");
    if(p>random){alert("猜大了")}
    else if(p<random){alert("猜小了")}
    else{alert("猜对了");break;}
}

日期对象

日期对象的使用

JavaScript中的日期对象需要使用new Date()实例化对象才能使用,Date()是日期对象的构造函数。Date()构造函数可以传入一些参数,示例代码如下。

// 方式1:没有参数
var date1 = new Date();  
// 输出:Wed Oct 16 2019 10:57:56 GMT+0800 (中国标准时间)
// 方式2:传入年、月、日、时、分、秒(月的范围是0~11)
var date2 = new Date(2019, 10, 16, 10, 57, 56);
// 输出:Sat Nov 16 2019 10:57:56 GMT+0800 (中国标准时间
// 方式3:用字符串表示日期和时间
var date3 = new Date('2019-10-16 10:57:56');
// 输出:Wed Oct 16 2019 10:57:56 GMT+0800 (中国标准时间)

日期对象的常用get方法

在这里插入图片描述

日期对象的常用set方法

在这里插入图片描述

练习

时间戳是获取从1970年1月1日0时0分0秒开始一直到当前UTC时间所经过的毫秒数。
获取时间戳的常见方式如下:

// 方式1:通过日期对象的valueof()或getTime()方法
var date1 = new Date();
console.log(date1.valueOf()); // 示例结果:1571196996188
console.log(date1.getTime()); // 示例结果:1571196996188
// 方式2:使用“+”运算符转换为数值型
var date2 = +new Date();
console.log(date2);	// 示例结果:1571196996190
// 方式3:使用HTML5新增的Date.now()方法
console.log(Date.now());	// 示例结果:1571196996190

数组对象

数组类型检测

数组类型检测有两种常用的方式,分别是使用instanceof运算符和使用Array.isArray()方法。

var arr = [];
var obj = {};
// 第1种方式
console.log(arr instanceof Array);	// 输出结果:true
console.log(obj instanceof Array);	// 输出结果:false
// 第2种方式
console.log(Array.isArray(arr));	// 输出结果:true
console.log(Array.isArray(obj));	// 输出结果:false

添加或删除数组元素

JavaScript数组对象提供了添加或删除元素的方法,可以实现在数组的末尾或开头添加新的数组元素,或在数组的末尾或开头移出数组元素。方法如下:
在这里插入图片描述
push()和unshift()方法的返回值是新数组的长度,而pop()和shift()方法返回的是移出的数组元素。

数组排序

JavaScript数组对象提供了数组排序的方法,可以实现数组元素排序或者颠倒数组元素的顺序等。排序方法如下:
在这里插入图片描述
需要注意的是:reverse()和sort()方法的返回值是新数组的长度。

数组索引

在开发中,若要查找指定的元素在数组中的位置,可以利用Array对象提供的检索方法。检索方法如下:
在这里插入图片描述
默认都是从指定数组索引的位置开始检索,并且检索方式与运算符“===”相同,即只有全等时才会返回比较成功的结果。

练习

要求在一组数据中,去除重复的元素。

function unique(arr) {
  var newArr = [];
  for (var i = 0; i < arr.length; i++) {
    if (newArr.indexOf(arr[i]) === -1) {  newArr.push(arr[i]); }
  }
  return newArr;
}
var demo = unique(['blue', 'green', 'blue']);
console.log(demo);	// 输出结果:(4) ["blue", "green"]

数组转换为字符串

在开发中,可以利用数组对象的join()和toString()方法,将数组转换为字符串。方法如下:
在这里插入图片描述

练习

// 使用toString()
var arr = ['a', 'b', 'c'];
console.log(arr.toString());	// 输出结果:a,b,c
// 使用join()
console.log(arr.join());		// 输出结果:a,b,c
console.log(arr.join(''));		// 输出结果:abc
console.log(arr.join('-'));		// 输出结果:a-b-c

数组其他方法

JavaScript还提供了很多其他常用的数组方法。例如,填充数组、连接数组、截取数组元素等。方法如下:
在这里插入图片描述
slice()和concat()方法在执行后返回一个新的数组,不会对原数组产生影响,剩余的方法在执行后皆会对原数组产生影响。

字符串对象

字符串对象的使用

字符串对象使用new String()来创建,在String构造函数中传入字符串,这样就会在返回的字符串对象中保存这个字符串。

var str = new String('apple');	// 创建字符串对象
console.log(str);			// 输出结果:String {"apple"}
console.log(str.length);		// 获取字符串长度,输出结果:5

根据字符返回位置

字符串对象提供了用于检索元素的属性和方法,字符串对象的常用属性和方法如下:
在这里插入图片描述

var str = 'HelloWorld';
str.indexOf('o');	    // 获取“o”在字符串中首次出现的位置,返回结果:4
str.lastIndexOf('o');  // 获取“o”在字符串中最后出现的位置,返回结果:6

根据位置返回字符

字符串对象提供了用于获取字符串中的某一个字符的方法。方法如下:
在这里插入图片描述

字符串操作方法

字符串对象提供了一些用于截取字符串、连接字符串、替换字符串的属性和方法。字符串对象的常用属性和方法如下:
在这里插入图片描述

练习

var str = 'HelloWorld';
str.concat('!');  // 在字符串末尾拼接字符,结果:HelloWorld!
str.slice(1, 3);   // 截取从位置1开始包括到位置3的范围内的内容,结果:el
str.substring(5);      // 截取从位置5开始到最后的内容,结果:World
str.substring(5, 7);  // 截取从位置5开始到位置7范围内的内容,结果:Wo
str.substr(5);           // 截取从位置5开始到字符串结尾的内容,结果:World
str.substring(5, 7);  // 截取从位置5开始到位置7范围内的内容,结果:Wo
str.toLowerCase();  // 将字符串转换为小写,结果:helloworld
str.toUpperCase();  // 将字符串转换为大写,结果:HELLOWORLD
str.split('l');	  // 使用“l”切割字符串,结果:["He", "", "oWor", "d"]
str.split('l', 3);	  // 限制最多切割3次,结果:["He", "", "oWor"]
str.replace('World', '!'); // 替换字符串,结果:"Hello!"

更多的内置对象我们可以Mozilla开发者网络(MDN)上查询。

  • 8
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力做一只合格的前端攻城狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值