1.数据字典类型的数据:
往后端传数据,往后端传要传字符串类型(多个值以逗号分隔),因为后端接收的是字符串
而前端使用的多选框控件产生的数据是数组,所以往后端传的时候要转化为字符串;
后端返回数据,后端返回的也是逗号分隔的字符串,
要回显在前端的多选框控件中,要将后端返回的数据转化为数组才能回显
注:字符串转数组 .split(',')//以逗号分隔截出来的字符为数组的每一项
数组转字符串 .toString()
2.for of遍历数组,for in遍历对象
for in 遍历数组和对象,for in 输出的是数组的index下标,而for of 输出的是数组的每一项的值。
for of 只能遍历数组,
for of 为啥不能遍历对象?(简要回答就是因为对象里没有遍历器)
因为能够被for...of正常遍历的,都需要实现一个遍历器Iterator。而数组、字符串、Set、Map结构,早就内置好了Iterator(迭代器),它们的原型中都有一个Symbol.iterator方法,而Object对象并没有实现这个接口,使得它无法被for...of遍历。
所以遍历数组用for of ,遍历对象用for in
//遍历属性名
for(let key in test) {
console.log(key);
}
//遍历属性值
for (let key in test) {
console.log(test[key]);
}
toString() 只能将数组转化成以逗号分割的字符串
3.join(",") 可以指定分隔符,将数组转化成字符串
分隔符填啥,转成的字符串就以啥分割(超级无敌实用小技巧)
4.split()
var txt = "a,b,c,d,e"; // 字符串
txt.split(","); // 用逗号分隔 ==>["a","b","c","d","e"]
txt.split(" "); // 用空格分隔
txt.split("|"); // 用竖线分隔
如果省略分隔符,被返回的数组将包含 index [0] 中的整个字符串。
如果以逗号为分隔符,被返回的数组将是间隔单个字符的字符串数组 ["a","b","c","d","e"]
let arr = Str.split(",");
let aindex = arr.indexOf("11");
arr.splice(aindex, 1);//aindex是开始位置的索引,从下标为aindex的位置开始,删除一个(包括aindex位置的元素)
let dictIds = arr.join(",");
let Str="2023-04-28 09:47:00"
Str.split(" ")[0] + "T" + Str.split(" ")[1];
console.log(Str); ==>2023-04-28T09:47:00
如果省略第二个参数,则 substring() 将裁剪字符串的剩余部分。
let row.a10="0小时";//对于字符间没有分隔字符的字符串,可以用分隔符为空的方式分割成单个字符组成的数组
let arr=row.a10.split("");//如果分隔符为空,则字符串被分割成单个字符组成的数组
let timeIndex=arr.indexOf("小");
arr.splice(timeIndex,2);
this.formNotice.timeNum= arr.join(',');
5.数组 push() 尾增
var arr =[];
arr.push(123); //可插入字符串
arr.push({
id:this.edit_id //可插入对象
})
6.数组 concat() 拼接
arr.concat(arr1,arr2);//多个数组合并成一个数组
var arr = [1,2,3,4,5]
var arr1=[6,7]
var newArr = arr.concat(arr1);
console.log("原数组",arr); //原数组 (5) [1, 2, 3, 4, 5]
console.log("返回值",newArr); //返回值 (7) [1, 2, 3, 4, 5, 6, 7]
7.字符串替换 replaceAll()
字符串.replaceAll(String regex, String replacement)
其中,regex 表示正则表达式,replacement 表示用于替换的字符串。例如:
String words = "hello java,hello php";
String newStr = words.replaceAll("hello","你好 ");
System.out.println(newStr); // 输出:你好 java,你好 php
//replace() 方法用于将目标字符串中的指定字符(串)替换成新的字符(串)
字符串.replace(String oldChar, String newChar)
字符串.replaceFirst(String regex, String replacement)
8、search() 字符串匹配
string.search(regexp)
string 中第一个与 regexp 相匹配的子串的起始位置。
如果没有找到任何匹配的子串,则返回 -1。
let text = "Mr. Blue has a blue house";
let position = text.search("Blue");// 4