JS中的API,预定义的函数和方法
toString() 将数组转换为字符串,默认是按照逗号分割元素
join('-') 将数组转换为字符串,默认是按照逗号分割元素,可以指定分隔符号
concat(arr1,arr2...) 拼接多个数组,arr1,arr2表示要拼接的数组,返回拼接后的数组
如何学习一个API:作用、参数、返回值;数组的API还需要查看原数组是否会发生变化。
slice(start, end) 截取数组元素,start开始的下标,end结束的下标,不包含end这一项,end为空会截取到最后,如果下标为负数表示倒数,返回的是截取的数组。原数组不会发生变化
练习:创建数组,包含a~h,每个字母是一个元素,截取出bc,f,将截取到的两部分组合成一个数组。
splice(start, count, v1, v2,...) 删除数组元素,start开始的下标,count删除的数量,count为空表示删除到最后,下标为负数表示倒数,返回删除的元素,原数组会发生变化。
练习:创建数组,包含a~h,每个字母是一个元素,删除cd,替换m为s,在下标为1的位置插入字母z
reverse() 翻转数组元素,返回翻转后的数组,原数组会发生变化
sort() 对数组元素进行排序,默认会将元素转为字符串进行的排序
sort(function(a,b) {
return a - b // 按照数字从小到大排列
// return b - a // 按照数字从大到小排列
})
push() 往数组末尾添加元素,返回数组的长度,原数组会发生变化
pop() 删除数组末尾的一个元素,返回删除的元素,原数组会发生变化
unshift() 往数组开头添加元素,返回数组的长度,原数组会发生变化
shift() 删除数组开头的一个元素,返回删除的元素,原数组会发生变化
indexOf() 查找数组中是否含有某个元素,返回的是下标,如果不存在返回-1
练习:创建一个数组,数组包含的元素有爱国福、和谐福,判断是否含有敬业福,如果不含有则把敬业福添加到数组中。
其它的API
W3school:JavaScript 数组方法
MDN:Array.prototype.push() - JavaScript | MDN
数组中的元素还是数组,用于对一组数据进行二次分类
var arr = [
[元素1, 元素2,..],
[元素1, 元素2,..],
[元素1, 元素2,..]
]
包装对象:目的就是让原始类型的数据像引用类型的数据,具有属性和方法,JS提供三种包装对象,分别是字符串对象、数值对象、布尔对象
new String('1') //将一个字符串包装为对象
String(1) //将一个值转换为字符串
转换字符本身的意义
\' // 将具有特殊意义的引号转义为普通引号
\n // 将字符n转义为换行符
\t // 将字符t转义为制表符(tab键效果,多个连续空格)
练习:打印输出以下路径
C:\WEB2303\JS\03.html
length 获取字符串的长度
所有字符串API无法改变原来字符串中的内容
charAt() 获取下标对应的字符,也可以使用数组的格式 字符串[下标]
练习:遍历字符串javascript,统计出字符a出现的次数。
var str = 'javascript'
// 遍历字符串
// 声明变量,用于统计数量
for(var i=0,count=0; i
面试题:统计出一个字符串中哪一个字符出现的次数最多,有多少次。(统计出每个次数出现的次数)
indexOf() 查找字符串中是否含有某个字符串,返回的是第一个的下标,找不到返回-1
lastIndexOf() 查找字符串中是否含有某个字符串,返回的是最后一个的下标,找不到返回-1
slice(start, end) 截取字符串,start开始的下标,end结束的下标,不包含end本身,end为空会截取到最后,下标为负数表示倒数
练习:分别截取出一个邮箱的用户名和域名,最后打印
var str = '[email protected]'
// 获取@对应的下标
var n = str.indexOf('@')
// console.log(n)
// 截取用户名
var user = str.slice(0,n)
var domain = str.slice(n+1)
// console.log(user,domain)
console.log(`用户名:${user} 域名:${domain}`)
split() 将字符串转为数组
toUpperCase() 英文字母转大写
toLowerCase() 英文字母转小写