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啦。。。
说实话你的描述很生动哈哈而且表情很多