js内置对象

Posted cnlisiyiii-stu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js内置对象相关的知识,希望对你有一定的参考价值。

系统提供的对象, Object Array Math Date等

宿主对象(浏览器宿主,Node宿主软件)

浏览器中提供的对象。Js运行环境提供等对象。比如 Bom中的window,Dom中的document。


(一)Math对象

Math本身是一个对象,不是构造函数。

  • 属性

console.log(Math.PI);

  • 方法

var a = Math.abs(-100);   //绝对值

 

- Math.abs(数字); 获取一个数字的绝对值

- Math.round(数字);  四舍五入

- Math.PI;    π

- Math.ceil(数字);    向上取整

- Math.floor(数字);  向下取整

- Math.random();    随机数[0,1);

- Math.max(数字,数字,数字...);    求最大数

- Math.min(数字,数字,数字...);    求最小数

 

(二)Date对象

Date和Math不同,是一个系统内置的构造函数。是JS提供的日期和时间的操作接口。

可以表示1970年1月1日前后各1亿天。

1. 创建日期对象

创建当前时间

1 new date = new Date();  //输出星期 月份 日期 年份 小时:分钟:秒 时区
2 
3 console.log(date);  //默认调用了toString(),得到的是字符串。
4 
5 console.dir(date);  //可以打印对象,得到的是对象。

 

创建其他时间

1 new date = new Date(‘2019/10/10 12:12:12‘);
2 
3 //或new date = new Date(‘2019-10-10 12:12:12‘);

 

时间戳:是数字。从1970年到某个时间的总毫秒值

1 var date = new Date(9999999999);
2 
3 console.dir(date);

 

传入多个参数

这种方式中的月份从0开始,即0到11。

1 var date = new Date(2019,3,4,12,12,12,500);
2 
3 console.dir(date); //打印2019年4月4日12:12:12

 

2. 操作日期对象

var date = new Date();  //创建一个日期对象

//获取

var year = date.getFullYear(); //获取年份

var month = date.getMonth(); //获取月份。月份从0开始,打印出当前月份-1

var day = date.getDate(); //获取日期

var week = date.getDay(); //获取星期。返回星期数,数字范围为0(周日)到6(周六)

var hours = date.getHours(); //获取小时

var minutes = date.getMinutes(); //获取分钟

var seconds = date.getSeconds(); //获取秒

var milliSeconds = date.getMilliSeconds(); //获取毫秒

var time = date.getTime(); //获取从1970年到某日的时间戳

//设置

date.setMonth(4);  //日期改变成5月

date.setMonth(12);  //日期改变成下一年的1月。数字没有范围,年份会自动变化

date.setMonth(-1);  //日期改变成上一年的12月。

 1     //封装一个函数,实现格式化日期。
 2     function blockDate(date) 
 3         // var date = new Date(); //获取当前时间
 4         var year = date.getFullYear();
 5         var month = date.getMonth() + 1;
 6         month = month < 10 ? ‘0‘ + month : month;
 7         var day = date.getDate();
 8         day = day < 10 ? ‘0‘ + day : day;
 9         var hours = date.getHours();
10         hours = hours < 10 ? ‘0‘ + hours : hours;
11         var minutes = date.getMinutes();
12         minutes = minutes < 10 ? ‘0‘ + minutes : minutes;
13         var seconds = date.getSeconds();
14         seconds = seconds < 10 ? ‘0‘ + seconds : seconds;
15         var dateStr = (year + ‘年‘ + month + ‘月‘ + date + ‘日 ‘ + hours + ‘点‘ + minutes + ‘分‘ + seconds + ‘秒‘);
16         return dateStr;
17     
18     var time = new Date(); //当前时间
19     var time = new Date(2019, 3, 4, 12, 12, 12); //指定时间
20     var r = blockDate(time);
21     document.write(r);

 

(三)数组对象

在js中数组是一个特殊对象:数组中数据的键名(即下标或索引)是一组从0开始的有序的数字。

1     var arr = new Array(11,22,33,44,55);
2 
3     console.log(arr);

1. 向数组前后添加数据

1     var arr = [‘张三‘, ‘李四‘];
2 
3     arr.unshift(‘小明‘, ‘小黄‘); //在数组最前面添加元素
4 
5     arr.push(‘王五‘, ‘赵六‘); //在数组末尾添加元素
6 
7     //var len = arr.push(‘王五‘,‘赵六‘);
8 
9     //console.log(len);  //可以返回添加后的数组长度。

2. 删除数组前后数据

1     var arr = [‘张三‘, ‘李四‘, ‘王五‘, ‘赵六‘];
2 
3     arr.pop(); //不需要传参数,删除数组最后一个元素
4 
5     arr.shift(); //删除数组的第一个元素
6 
7     //var r = arr.pop(); 
8 
9     //console.log(arr);  //返回删除掉的最后一个元素

3. 删除任意位置的数据

数组名.splice(index,howmany,item1,...,itemn);

index 从数组的什么位置开始删

howmany 删几个

item 添加的其他数据

1     var arr = [‘张三‘, ‘李四‘, ‘王五‘, ‘赵六‘];
2 
3     arr.splice(1, 1); //删掉了李四
4 
5     //arr.splice(1,1,lisi); //将李四替换成了lisi
6 
7     //arr.splice(1,0,‘小明‘,‘小白‘);  //在李四前面添加了小明和小白
8 
9     console.log(arr);

4. 数组元素的查询

数组名.indexOf(searchElement,index);

index 表示从数组的什么位置开始查找

 1     var arr = [‘张三‘, ‘李四‘, ‘张三‘, ‘王五‘, ‘张三‘, ‘赵六‘]; //0,2,4
 2 
 3     var index = arr.indexOf(‘张三‘); //返回张三在数组中的位置
 4 
 5     //从前往后找,如果数组中有两个张三,返回第一个张三的位置。
 6 
 7     var index = arr.indexOf(‘张三‘, 2); //返回2
 8 
 9     //var index = arr.lastIndexOf(‘张三‘); //返回最后一个张三的位置
10 
11     //若查找的数据不存在,返回-1
12 
13     //var index = arr.indexOf(‘陈七‘);
14 
15     console.log(index);

5. 反转和排序

反转:arr.reverse();

排序:arr.sort();  //默认按照Unicode编码排序,所以11会排在6前面

1     arr.sort(function (a, b)) 
2 
3         //a和b代表数组中相邻的两个数字
4 
5         return a - b; //从小到大排列。
6 
7         //return b-a; //从大到小排列。
8 
9     

6. 截取和拼接

截取arr.slice(start,end);

1     var arr = [‘张三‘, ‘李四‘, ‘张三‘, ‘王五‘, ‘赵六‘];
2 
3     var r = arr.slice(); //表示截取全部
4 
5     var r = arr.slice(2); //表示从指定位置向后截取所有。结果‘张三‘,‘王五‘,‘赵六‘
6 
7     var r = arr.slice(1, 3); //从指定位置向后截取到结束的位置,包括1但是不包括3

拼接

1     var arr = [‘张三‘, ‘李四‘, ‘王五‘, ‘赵六‘];
2 
3     //var str = arr.join();  //默认用,连接
4 
5     //var str = arr.join(‘-‘);  //用-连接

7. 清空数组

 1     var arr = [22, 33, 44, 55];
 2 
 3     // 方式1 推荐
 4     arr = [];
 5 
 6     // 方式2
 7     arr.length = 0;
 8 
 9     // 方式3
10     arr.splice(0, arr.length);

 

(四)String对象

字符串在内存中占据的大小由字符串的长度决定,字符串在重新赋值时,字符串的长度可能会发生改变。

在内存中原有的数据不会被更改,而是开辟新的空间,存放重新赋值后的数据。原有的数据会在某一时刻被浏览器回收。

要避免大量的字符串拼接,因为字符串由不可变性,在重新开辟空间时会耗时。

1. 获取字符串中的单个字符

字符串.charAt(index);

字符串[index]; // 推荐使用

2. 字符串的拼接和截取

  • 拼接

字符串.concat(str1,str2,str3...);

拼接符+ //推荐使用?

  • 截取

字符串.slice(star,end);

3. 查询字符是否在字符串中存在

字符串.indexOf();

字符串.lastIndexOf();

4. 去除空白符

字符串.trim(); // 去除字符串两边的空格

5. 字母字符大小写转换

字符串.toUpperCase(); // 转换大写 

字符串.toLowerCase(); // 转换小写 

6. 字符串替换

字符串.replace(newStr,oldStr);

7. 字符串分割

字符串.split(sp);  // 把一个字符串分割成字符串数组。

 

 

 

 

 

以上是关于js内置对象的主要内容,如果未能解决你的问题,请参考以下文章

什么是“JS”的内置对象?

js的内置对象和java类的区别

javascript内置对象

JavaScript内置对象

JavaScript内置对象

JS基础语法---内置对象