首页 > 代码库 > javascript内置对象(数组、字符串、日期)

javascript内置对象(数组、字符串、日期)

javascript基于对象的语言,由不同的对象,组成的编程语言。

数组对象、数值对象、字符串对象、日期对象、数学对象、正则表达式、DOM对象、BOM对象、事件对象

数组对象的常用方法:

length:获得数组的元素个数

concat():合并数组生成一个新数组

1 <script type="text/javascript">2         var arr1 = [‘吃饭‘,‘睡觉‘];3         var arr2 = [‘喝水‘,‘挠头‘];4         console.log(arr1.concat(arr2));5 </script>

join():将数组的元素连接成字符串

1 <script type="text/javascript">2     var arr1 = [‘吃饭‘,‘睡觉‘];3     var arr2 = [‘喝水‘,‘挠头‘];4     console.log(arr1.concat(arr2).join(‘-‘));5 </script>

push():向数组的末尾添加元素。return 数组的个数

1 <script type="text/javascript">2     var arr1 = [‘吃饭‘,‘睡觉‘];3     var arr2 = [‘喝水‘,‘挠头‘];4     var arr3 = arr1.concat(arr2);5     console.log(arr3.push(‘听歌‘));6     document.write(arr3);7 </script>

pop():吧把数组的最后一个元素删除

1 <script type="text/javascript">2     var arr1 = [‘吃饭‘,‘睡觉‘];3     var arr2 = [‘喝水‘,‘挠头‘];4     var arr3 = arr1.concat(arr2);5     console.log(arr3.pop());    //挠头    arr3.pop()6     document.write(arr3);        //吃饭,睡觉,喝水7 </script>

shift():删除第一个元素

unshift():向数组的开头添加元素

reverse():颠倒数组的顺序。hint:(很好用的一个函数,也是一个面试题。数组翻转,php中也有,实现中文字符串倒叙翻转可以用到,使用preg_match_all(‘/./u‘,$str,$result);配合implode使用array_reverse())

1 <script type="text/javascript">2     var str1 = ‘我爱中国‘;3     var result = str1.match(/./g);4     result = result.reverse();5     console.log(result);6 </script>

slice(start,end):截取数组的元素

splice(startIndex,deleteCount,values):删除数组的元素。

@param startIndex 开始的索引位置

@param deleteCount 删除元素的个数

@param values 可选,如果有参数3,表示使用参数3的值代替删除的内容

@return 删除的内容

1 <script type="text/javascript">2     var arr1 = [‘吃饭‘,‘睡觉‘,‘看电影‘];3     arr1.splice(0, 2, ‘洗澡‘);4     console.log(arr1);    //洗澡,看电影5 </script>

toString():将数组转换成字符串

1 <script type="text/javascript">2     var arr1 = [‘吃饭‘,‘睡觉‘,‘看电影‘];3     var result = arr1.toString();4     console.log(result);    //吃饭,睡觉,看电影5 </script>

字符串对象的常用方法:

indexOf():获取字符在字符串中第一次出现的位置

1 <script type="text/javascript">2     var str1 = ‘abcdefg‘;3     var index = str1.indexOf(‘d‘);4     console.log(index);        //3        数组下标以0开头5 </script>

lastIndexOf():反之同上。

split():按照分隔符将字符串拆分成数组

1 <script type="text/javascript">2     var str1 = ‘abcd,ef,g‘;3     var arr1 = str1.split(‘,‘);4     console.log(arr1[0]);    //abcd5 </script>

 replace(a,b):在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串

1 <script type="text/javascript">2     var str1 = ‘abcd,efg123‘;3     var result = str1.replace(‘,efg‘,‘-‘);4     console.log(result);    //abcd-5     var reg = /\d+/;6     var result = str1.replace(reg,‘-‘);    //使用正则替换7     console.log(result);    //abcd,efg-8 </script>

charAt(index):查找在index这个索引处的字符

1 <script type="text/javascript">2     var str1 = ‘abcd,efg123‘;3     var result = str1.charAt(10);4     console.log(result);    //35 </script>

小练习:查找随机三位数的个位,十位,百位的立方和等于它本身

 1 <script type="text/javascript"> 2     for (var i = 100; i <= 999; i++) { 3  4         var str = String(i); 5  6         var ge = parseInt(str.charAt(2));    //个位 7         var shi = parseInt(str.charAt(1));    //十位 8         var bai = parseInt(str.charAt(0));    //百位 9 10         if (ge*ge*ge+shi*shi*shi+bai*bai*bai == i) {11             document.write(i+‘<hr>‘);12         }13     }14 </script>

 slice(start,end):从start开始截取,截取到end这个位置。

substr(start,length):从start位置开始截取,截取length个长度

toLowerCase():将字符串转换成小写。toUpperCase()反之 //str.toLowerCase()

数学对象常用方法:    //Math对象

Math.abs():计算绝对值

Math.ceil():向上取整  //忽视小数,都会向上取整

Math.floor():同上反之

1 <script type="text/javascript">2     var str1 = 1.9;3     var result = Math.floor(str1);4     console.log(result);    //15 </script>

Math.round():四舍五入取整

Math.max():计算最大值

Math.min():计算最小值

1 <script type="text/javascript">2     var result1 = Math.max(1,5,8,6,7,9,2);3     var result2 = Math.max(1,5,8,6,7,9,2);4     console.log(result1);    //95     console.log(result2);    //16 </script>

Math.pow(x,y):获取x的y次方

Math.sqrt(num):获取num的平方根

Math.random():取得0-1之间的随机数

1 <script type="text/javascript">2     var str = Math.random() * 10;3     console.log(Math.round(str));4 </script>

日期对象常用方法:   //new Date()获得日期对象

获得年月日、时分秒:

getFullYear、getMonth()、getDate()、getHours()、getMinutes()、getSeconds()

1 <script type="text/javascript">2     var odate = new Date();3     var month = odate.getMonth()+1;    //月份从0-11之间的数字,因此要+14     document.write(‘北京时间:‘+odate.getFullYear()+‘-‘+month+‘-‘+odate.getDate());5 </script>

getDay():获取星期数  //0-6之间的数字,0为星期日

getMilliSeconds():获得时间后面的毫秒数,1000毫秒为1秒

getTime():获得当前的时间戳(单位是毫秒的时间戳)

1 <script type="text/javascript">2     var time = new Date("2017-4-26 16:29:59:688")    //自定义时间3     document.write(time.getTime())    //14931953996884 </script>

toLocaleString():将日期对象转换成本地的时间格式

1 <script type="text/javascript">2     var time = new Date()3     document.write(time.toLocaleString())4 </script>

设置时间:

setFullYear()  //年

setMonth()   //月

setDate()   //日

1 <script type="text/javascript">2     var time = new Date();3     time.setFullYear(2016);4     document.write(‘去年的今天是:星期‘+time.getDay())    //去年的今天是:星期25 </script>

javascript内置对象(数组、字符串、日期)