JavaScript类型相关的常用操作总结
js的基本数据类型有哪些?
ECMAScript中有5中简单数据类型(也称为基本数据类型):Undefined、Null、Boolean、Number和String。还有1中复杂的数据类型————Object,Object本质上是由一组无序的名值对组成的。
其中Undefined、Null、Boolean、Number都属于基本类型。Object、Array和Function则属于引用类型,String有些特殊
本文主要给大家介绍了关于js类型相关的常用操作,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧
JS数组,字符串,json互相转换
JS数组转字符串
使用数组自带的join方法可以把数组转化为字符串:
letarr=[1,2,'uu']; letstr=arr.join(','); console.log(str);//1,2,uu
如果素组元素包含对象,则调用对象的toString()方法将对象转化为字符串。
classC{ //自定义类C,以及自定义toString()方法 toString(){return'classC';} } letcc=newC();//C的实例 letarr=[{a:1},cc,[3,4,[5,5]],5]; letstr=arr.join('---'); console.log(str);//[objectObject]---classC---3,4,5,5---5
从上面的例子中还可以发现,数组中嵌套数组时,所有元素依次打印出来,那是因为数组Array的toString()方法内部实现就是join.
[1,1,[2,2,[3,3,3]]]+"";//1,1,2,2,3,3,3
字符串转数组
使用字符串自带的split方法可以把字符串分割为数组。
letstr='1,2,uu'; letarr=str.split(','); console.log(arr);//["1","2","uu"] str
数组转json字符串,json字符串转数组
使用JSON.parse()方法可以解析json字符串转化为相应的json对象(包括数组),使用JSON.stringify()方法可以把数组或对象转化为json字符串。
letarr=[1,2,'uu']; letjsonStr=JSON.stringify(arr); console.log(jsonStr);//字符串:'[1,2,"uu"]' letjsonObj=JSON.parse(jsonStr); console.log(jsonObj);//数组:[1,2,'uu']
JS清空数组的方法
赋值空数组
letarr=[1,2,3]; console.log(arr);//[1,2,3] arr=[]; console.log(arr);//[]
修改length属性
JS数组的length熟悉可以直接修改。
letarr=[1,2,3]; console.log(arr);//[1,2,3] arr.length=0; console.log(arr);//[]
使用splice方法
JS中数组自带的splice()方法用于向数组中添加或者删除元素,功能非常强大。
参数说明如下,返回值为包含被删除项目的新数组,如果有的话。
arrayObject.splice(index,howmany,item1,.....,itemX)
参数名 | 描述 |
---|---|
index | 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。 |
howmany | 必需。要删除的项目数量。如果设置为0,则不会删除项目。 |
item1,...,itemX | 可选。向数组添加的新项目。 |
letarr=[1,2,3]; console.log(arr);//[1,2,3] letarr2=arr.splice(0,arr.length);//删除所有元素 console.log(arr);//[] console.log(arr2);//[1,2,3]
JS时间和时间戳的转换
JS时间转时间戳
使用Date对象的方法:
letdateObj=newDate();//Date对象,当前时间 //parse()方法,毫秒级别的数值被转化为000 Date.parse(dateObj);//1549976497000 //Date对象的valueOf()方法 dateObj.valueOf();//1549976497495 //Date对象的getTime()方法 dateObj.getTime();//1549976497495 //转化为Number类型,包括显式和隐式类型转换 newNumber(dateObj);//Number{1549976497495} dateObj-0;//1549976497495
JS时间戳转时间
直接将时间戳作为参数新建一个Date对象即可,支持毫秒和秒。
lettimestamp=1549976497495; letdateObj=newDate(timestamp);//Date对象 dateObj.getTime();//1549976497495 timestamp=1549976497; dateObj=newDate(timestamp);//Date对象 dateObj.getTime();//1549976497
JS字符串和时间戳互转
Date()对象的构造函数不仅可以接受表示时间戳数字类型的参数,还可以接受时间字符串,但是对格式有要求。
lettimeStr='2019-02-0212:12:12'; letdateObj=newDate(timeStr); dateObj.getTime();//1549080732000 dateObj.toDateString();//SatFeb022019 dateObj.toString();//SatFeb02201912:12:12GMT+0800(中国标准时间) dateObj.toLocaleString();//2019/2/2下午12:12:12 myDate.getYear();//获取当前年份(2位) myDate.getFullYear();//获取完整的年份(4位,1970-????) myDate.getMonth();//获取当前月份(0-11,0代表1月) myDate.getDate();//获取当前日(1-31) myDate.getDay();//获取当前星期X(0-6,0代表星期天) myDate.getTime();//获取当前时间(从1970.1.1开始的毫秒数) myDate.getHours();//获取当前小时数(0-23) myDate.getMinutes();//获取当前分钟数(0-59) myDate.getSeconds();//获取当前秒数(0-59) myDate.getMilliseconds();//获取当前毫秒数(0-999) myDate.toLocaleDateString();//获取当前日期 varmytime=myDate.toLocaleTimeString();//获取当前时间 myDate.toLocaleString();//获取日期与时间----如果涉及到时分秒,直接使用即可。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对毛票票的支持。