一、使用join()方法
let arr = ['apple', 'banana', 'orange']; let str = arr.join(); console.log(str); // 'apple,banana,orange'
2、如果需要按照指定字符将数组元素连接成字符串,则可以在join()方法参数中传入字符串。
let arr = ['apple', 'banana', 'orange']; let str = arr.join('&'); console.log(str); // 'apple&banana&orange'
二、使用toString()方法
1、toString()方法是将数组变成一个字符串,每个元素中间用逗号分隔。
let arr = ['apple', 'banana', 'orange']; let str = arr.toString(); console.log(str); // 'apple,banana,orange'
2、也可以在toString()方法参数中传入字符串。
let arr = ['apple', 'banana', 'orange']; let str = arr.toString('|'); console.log(str); // 'apple|banana|orange'
三、使用reduce()方法
1、reduce()方法将数组中的每个元素依次遍历,累加器对当前的元素进行处理,最终返回一个字符串。
let arr = [1, 2, 3, 4, 5]; let str = arr.reduce((prev, curr) => { return prev + curr; }, ''); console.log(str); // '12345'
2、如果需要将数组元素以指定字符分隔,则可以在累加器函数中加入指定字符。
let arr = [1, 2, 3, 4, 5]; let str = arr.reduce((prev, curr, index) => { return index === 1 ? `${prev}|${curr}` : `${prev}${curr}`; }); console.log(str); // '1|2|3|4|5'
四、使用concat()方法
1、concat()方法用来连接两个或多个数组,返回一个新的数组。如果传入的参数是字符串,则将其转化为数组后连接。
let str = 'Hello World'; let arr = ['apple', 'banana', 'orange']; let newStrArr = arr.concat(str); console.log(newStrArr.join(',')); // 'apple,banana,orange,Hello World'
2、特别注意:concat()方法并不会改变原数组。
五、使用eval()方法
1、如果数组元素是数字,那么可以使用eval()方法将数组转化为字符串。
let arr = [1, 2, 3, 4, 5]; let str = eval(arr.join('+')); console.log(str); // '15'
2、但是使用eval()方法需要特别小心,不应用于处理未知数据,因为可以执行任何有效的 JavaScript 代码。
六、使用replace()方法
1、如果数组元素是字符串,则可以使用replace()方法对其进行处理。
let arr = ['apple', 'banana', 'orange']; let str = arr.join().replace(/,/g, '|'); console.log(str); // 'apple|banana|orange'
2、replace()方法是将字符串中的某个子字符串替换成另一个子字符串。
七、使用JSON.stringify()方法
1、如果数组元素是对象,则可以使用JSON.stringify()方法将其转化为字符串。
let arr = [ {name: 'apple', price: 2}, {name: 'banana', price: 3}, {name: 'orange', price: 4} ]; let str = JSON.stringify(arr); console.log(str); // '[{"name":"apple","price":2},{"name":"banana","price":3},{"name":"orange","price":4}]'
2、JSON.stringify()方法可以将任何 JavaScript 对象转化为字符串。
八、小结
1、将数组转化为字符串我们可以使用join()、toString()、reduce()、concat()、eval()、replace()和JSON.stringify()等方法。
2、在使用这些方法时,应该根据具体情况选择最适合的方法。