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次方
浙公网安备 33010602011771号