1、字符串对象
18_1、查看字符串的长度 var a = "hello world" alert(a.length) 18_2、遍历整个字符串的,这里的是索引 for (var i in a){ alert(a[i]) } 18_3、编排方法,自己可以f12抓包看标签的内容 document.write(s.italics()); 实现一个斜体的效果 document.write(s.bold()); 实现一个加粗的效果 document.write(s.anchor("alex")); 实现一个超链接的效果 18_4、实现字符串的大小写 alert(s.toUpperCase()) 大写 alert(s.toLowerCase()) 小写 18_5、获取指定字符 alert(s.charAt("4")) 获取下标为4的字符 alert(s.charCodeAt("4")) 获取下标为4的字符的asci码 18_6、字符串的其他特性 alert(s.search("l")) 返回第一个匹配到的字符的索引值 replace方法,做字符的替换,只会替换第一个匹配到的字符 console.log(s.replace("L","HELLO")) split按照指定的字符分割字符,返回一个列表 console.log(s.split("o")) concat连接两个字符串,和python中的加号的效果一样 console.log(s.concat("hhhhhhhhhhh")) substr,按照索引为1开始取值,一共取一个值 console.log(s.substr(1,1)) substring按照索引取值,索引为1的开始到索引为2截止 console.log(s.substring(1,3)) slice的作用和substring效果一样,但是slice支持负数 console.log(s.slice(1,-2)) indexOf获取第一次出现字符的索引 console.log(s.indexOf("L")) lastIndexOf获取最后一次出现字符的索引 console.log(s.lastIndexOf("L"))
2、array,数组对象,javascript中最常用对象,也支持嵌套
创建数组的方式 var a = ["a","b","c"]; var b = new Array("a","b","c"); console.log(a.length) 返回值是4 console.log(b.length) 返回值是4 console.log(a instanceof Array) 返回值是true console.log(b instanceof Array) 返回值是true 19_1、如果采用初始化的方式创建数据,但是只有参数,而且这个参数是数字的话,那么这个意思就是这个数组的长度就是3,但是长度是可变的,比如下面的例子 var c = new Array(3); console.log(c.length) 返回值是3 如果我们确实想存一个数字到数组中,就用 var a = [3] 19_2、二维数组,就是在数组中嵌套数组 var d = ["a","b","c",[1,2,3,4,5]] console.log(d[3][2]) 返回值是3 19_3、数组对象的方法 join方法,把数组中的所有的元素用"--------------"连接起来,包括嵌套的元素 var d = ["abc","123",[12222222222222,"aaaaaaaaaaaaaaaa"]] console.log(d.join("---------------")) 栈:先进后出 队列:先进后出 push;往栈中压数据,往栈的最后添加数据,也就是往最右边插入数据 var d = ["a","b","c",[1,2,3,4,5]] d.push("cui") d.push("hao") d.push("ran") console.log(d) console.log(d[6]) 返回的结果是"ran" pop:弹栈的操作,最后进入的元素会首先被弹出 console.log(d.pop()) 结果是ran console.log(d.pop()) 结果是hao console.log(d.pop()) 结果是cui unshift,也是压栈操作,但是往最左边插入数据 var d = ["a","b","c",[1,2,3,4,5]] d.unshift("cui"); d.unshift("hao"); d.unshift("ran"); shift:弹栈操作,也是后进先出的栈操作 console.log(d); console.log(d.shift()); console.log(d) 19_4、排序sort,reverse var a = ["c","f","a","b"] console.log(a.reverse()) 结果是["b", "a", "f", "c"] sort的排序不是按照大小来排序的,是按照asci码来排序的 console.log(a.sort()) 结果是["a", "b", "c", "f"] 19_5、concat,把两个列表连接在一起,返回一个新的列表 a.concat([1,2,3,4,5]) console.log(a.concat([1,2,3,4,5]))
3、date对象
20_1、实例化一个当前时间的对象 var date_obj = new Date() alert(date_obj.toLocaleString()) 返回结果:2018/3/24 上午11:55:30 alert(date_obj.toLocaleDateString()) 返回结果:2018/3/24 20_2、实例化一个指定时间的对象,这个斜杠换成逗号也可以,斜杠换成空格也可以 var date_obj_1 = new Date("2016/2/5 13:57") alert(date_obj_1.toLocaleString()) 返回结果:2016/2/5 下午1:57:00 20_3、写一个秒,然后计算从1970年1月1号往后推的时间 var date_obj_2 = new Date(30000000) alert(date_obj_2.toLocaleString()) 返回结果:当前时区计算的时间:1970/1/1 下午4:20:00 alert(date_obj_2.toUTCString()) 返回的结果:格林威治时间:Thu, 01 Jan 1970 08:20:00 GMT 20_4、date的方法介绍 各种get的方法,取时间 alert(date_obj_2.getFullYear()); alert(date_obj_2.getHours()) alert(date_obj_2.getMinutes()) alert(date_obj_2.getMonth()) 各种set的方法,设置时间 alert(date_obj_2.setDate()) alert(date_obj_2.setFullYear())
4、正则对象
var re_obj = new RegExp("\d+","g"); 创建一个正则表达式的对象,这里的g是全局匹配,这里的g还可以是i,就是忽略大小写 alert(re_obj.test("aaaaaaaaaaabbb")); alert(re_obj.test("aaaaaaaaa11aaa")); test方法,匹配上返回true,匹配不上,返回false var s = "hel123lo" var re_obj = new RegExp("\w"); alert(s.search(re_obj)); 取出第一个匹配到的值的索引值 alert(s.match(re_obj)); 取出所有匹配到的内容,然后返回一个数组 alert(s.split(re_obj)) 按照指定的字符分割字符串 alert(s.replace(/d/g,"aaaaaa")) 通过正则对比替换字符串
5、math对象
math对象:数学计算的对象,这个javascript是创建好的对象,可以直接使用,不用实例化,相当于是一个内置对象,拿来即用 22_1、rangdom alert(Math.random()) 返回一个1以内的随机数,比如0.169293539819785 22_2、round方法,四舍五入 var n1 = 2.3; var n2 = 2.6; alert(Math.round(n1)) 返回结果是2 alert(Math.round(n2)) 返回结果是3 用math这个对象的random和round取出1到100的数字,可以用下面的方法 var c = Math.random() * 100 alert(Math.round(c)) alert(Math.pow(2,3)) 取2的3次方