字符串
大小写切换
-
转换大写
-
str.toUpperCase()
-
let a = 'abcdfgFJzhangcuihuamJkMnLiligodaohhijk' let c = a.toUpperCase() console.log(a); console.log(c); -
css方式实现
- text-transform:uppercase;
-
-
转换小写
-
str.toLowerCase()
-
let a = 'abcdfgFJzhangcuihuamJkMnLiligodaohhijk' let b = a.toLocaleLowerCase() console.log(a); console.log(b); -
css方式实现
- text-transform:lowercase;
-
查找指定字符串第一次出现的位置
-
str.indexOf('检索的字符')
-
let a = 'abcdfgFJzhangcuihuamJkMnLiligodaohhijk' let d = a.indexOf('ligodao') console.log(a); console.log(d); -
返回值是字符串第一次出现的索引
-
索引从0开始
-
没找到返回-1
-
let a = 'abcdfgFJzhangcuihuamJkMnLiligodaohhijk' let d = a.indexOf('李狗蛋') console.log(a); console.log(d);
-
提取字符串
-
str.substr(从哪个索引开始提取, 提取几个)
-
let a = 'abcdefghijklmnopqrstuvwxyz' let b = a.substr(7, 6) console.log(a); console.log(b);
字符串转数组
-
str.split('分隔符')
-
let a = 'beixi,jinju,bainiao,sf' let b = a.split(',') console.log(a); console.log(b);数组
反转数组
-
arr.reverse()
-
let date = ['12-20', '1-1', '1-5', '2-5', '2-14', '2-17'] console.log(date); date.reverse() console.log(date);
清空数组
-
arr = []
-
let arr = [0, 1, 2, 3, 4, 5, 6] console.log(arr); arr = [] console.log(arr); -
arr.length = 0
-
let arr = [0, 1, 2, 3, 4] console.log(arr); arr.length = 0 console.log(arr);
数组转字符串
-
arr.join(转换字符串后的分隔符)
-
默认是逗号
-
let arr = ['李狗蛋', '张翠花', '赵铁柱'] console.log(arr); // 用一个变量来接受转换后的结果 // arr.join(转换字符串后的分隔符,默认是逗号) let str = arr.join() console.log(str);
-
数组排序
-
从小到大(升序)
-
arr.sort(function(a,b){return a - b})
-
// a - b从小到大排序 let arr = [-2, 1, 0, 5, 8, 3, 4, 9] arr.sort(function(a, b) { return a - b }) console.log(arr);
-
-
从大到小(降序)
-
arr.sort(function(a,b){return b - a})
-
//b -a 从大到小排序 let arr = [-2, 1, 0, 5, 8, 3, 4, 9] arr.sort(function(a, b) { return b - a }) console.log(arr);
-
删除元素并添加元素
-
arr.splice(从哪里删,删几个,追加元素,追加元素)
-
let arr = ['正骨水', '万花油', '白花油', '风油精'] arr.splice(2, 1, '六味地黄丸', '乌鸡丸') console.log(arr);
数组遍历
-
forEach数组遍历
-
Array.forEach(function (v, i){ })
-
用于调用数组的每个元素,并将元素传递给回调函数
-
原数组不变
-
// 数组中的每个元素统一加10 let arr1 = [1, 2, 3, 4, 5, 6] let newArr = [] // v -> value值 i-> 索引 arr1.forEach(function(v, i) { newArr.push(v + 10) }) console.log(newArr);
-
-
map数组遍历
-
Array.map(function (v, i){ })
-
原数组的每一项执行函数后,返回一个新的数组
-
原数组不变
-
// 让所有人的年龄加一 let arr = [{ name: '李狗蛋', age: 16, sex: '男' }, { name: '张翠花', age: 20, sex: '女' }, { name: '赵铁柱', age: 25, sex: '男' }, { name: '王小二', age: 19, sex: '男' }] let newArr = arr.map(function(v, i) { v.age += 1 return v }) console.log(newArr);
-
-
filter数组遍历
-
Array.filter(function(v,i){})
-
过滤数组中,符合条件的元素并返回一个新的数组
-
// 去重 let arr = [1, 1, 2, 3, 4, 4, 5, 6, 6, 6, 6, 7, 7, 8, 9, 9, 9] let newArr = arr.filter(function(v, i) { // 让数组中的值第一次出现的索引位置匹配数组的索引 return arr.indexOf(v) === i }) console.log(newArr);
-
交换变量的值
临时遍历temp
-
let temp = [] temp = a a = b b = temp
-
let a = 10 let b = 1; console.log(a, b); let temp = [] temp = a a = b b = temp console.log(a, b);
利用数组
-
[a, b] = [b, a]
-
let a = 6 let b = 9; console.log(a, b); [a, b] = [b, a] console.log(a, b);
展开运算符
...
let obj1 = {
name: '李狗蛋',
age: 18
}
let obj2 = { ...obj1 }
console.log(obj1);
console.log(obj2);