js内置对象总结

2018-01-31T23:20:04

js的内置对象一共有四种:Array,String,Math,Date

Array

怎么创建就不说了好简单

说一下方法吧

首先是4个栈方法

1.push():在数组后面加

2.unshift():在数组前面加

3.pop():在数组后面减

4.shift():前面减

带了p(gu)的就是后面的,后面少了一位的(pop)就是在后面减

另外两个当然就是前面的啦,前面加了个un的(unshift)就是前面加 。纯属瞎鸡儿说说  :yi:

下面是数组的转化和重排序方法

1.转化:

当然是转成了字符串了,join()

不带参数,就直接变成字符串了中间都是带着,号的

想去逗号也很简单join(""),逗号就没了;如果想通过-连接,那么join("-")

2.重排序

有reserve(),有sort()

reserve():

简单粗暴,数组倒个顺序,返回值是数组

sort():

对数组中的元素排序

举两个例子

var kk = ["r", "a", "d", "e"];
kk.sort();
document.write(kk);

那么输出的是a,d,e,r

var kk = ["1", "565736", "7", "0"];
kk.sort();
document.write(kk);

这是奇怪的是输入0,1,565736,7。 :qian:

这里要注意:1、即使数组中的是数字,但是sort()仍比较的是字符串

2、sort()可以接受一个比较函数作为参数(这样可以解决上面的问题,比较数字)

var kk = ["1", "565736", "7", "0"];
kk.sort(function (a, b) { return a - b; });
document.write(kk);

上面的是升序的

当然b-a就是降序了 :hehe:

数组操作方法

concat(),slice(),splice()

concat():就是把数组连一块没什么说的

slice(start,end):

从数组中返回选定元素,返回值是数组

它有3个注意点:

1.如果参数中有一个负数,那么就用数组长度加上该数,确定相应位置

2.end这个数选不到,选的是它前面那个数

3.end省了表示一直选取到最后一个数

splice():

它就比较牛逼了,它可根据参数的不同实现3的功能:删除,插入,替换

不管怎么说它多少得有2个参

删除:splice(index,count),index表示从哪里开始删除,count那是删几个

插入:splice(index,0, ...),从index那个位置插,插入省略号里的内容

替换:splice(index,count, ...)如果count=0,那么返回空数组,它前两者的结合体,可能是孩子吧 :evil:

数组的位置方法(其实就是找位子)

indexOf(),lastIndexOf()

indexOf(找的东西,起点):从前往后找

lastIndexOf(招的东西,起点):从后往前找

注意:1.找不到会返回-1,不管是从前往后还是从后往前,都是返回的第一个找到的位置

2.查找时会使用全等操作符,注意查找的东西要严格相等
3.这是ECMAScript5为数组新增的,兼容不了就自己写呗

function arrayIndexOf(arr, value) {
  for (var i = 0; i < arr.length; i++) {
    if (arr[i] === value) {
      return i;
    }
  }
  return -1;
}

String

字符串对象的方法

indexOf(),lastIndexOf(),charAt(),charCodeAt()

前两个同数组中的差不多

charAt(index):返回该位置的字符

charCodeAt(index):返回的是该位置的字符的字符编码

字符串对象的截取方法

slice(),substring(),substr()

第一个同数组

第二个同第一个,不一样的地方在于参数出现负数则该参数视为0

substr(start,len):len是截取字符总数,省略时截取到最后,为负数时返回空字符串;start为负数时,位置为他和字符串长度的相加。

字符串对象方法

split();replace()

split():是将字符串变成数组和数组中的join()方法正好倒过来了。但split()中的分隔符参数是必选的

replace(替换谁,替换成谁)

注:1.它只替换第一个

2.不改变原字符串(妈的,真鸡儿特殊啊  :yi: )

var str = "a/b/c/d/e/f/g/h";
var arr = str.split("/");
var strNew = arr.join().replace(/,/g, "-");//如果全替换就这么写
document.write(arr);
document.write("<br/>");
document.write(strNew);

本来没这么麻烦的,就是演示一下用replace方法全替换

其他方法

toUpperCase(),toLowerCase()没什么好说的就是大小写

Math

min():最小

max():最大

ceil():向上取整

floor():向下取整

round():四舍五入

abs():取绝对值

random():随机数

产生m到n随机数的公式Math.floor((m-n+1)*Math.random()+n)

Date

getFullYear()

getMonth():返回0~11的数,在此基础上加一就是月份

getDate()

getDay():返回0~6,0代表星期日

getHours()

getMinutes()

getSecond()

getTime():返回从1970/1/1到现在的毫秒数

有get当然有set啦。。。

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »
因本文不是用Markdown格式的编辑器书写的,转换的页面可能不符合MIP标准。