当前位置: 首页 > news >正文

js str字符串和arr数组互相转换

js str字符串和arr数组互相转换

字符串转为数组

1、split()方法
返回的是原字符串的数组

var str = "hello";  
var arr = str.split("");  
console.log(arr); //输出["h", "e", "l", "l", "o"]

2、Array.from()方法
返回一个新的数组实例

var str = "hello";  
var arr = Array.from(str);  
console.log(arr); // 输出:["h", "e", "l", "l", "o"]

3、扩展运算符(…)

var str = "hello";  
var arr = [...str];  
console.log(arr); // 输出:["h", "e", "l", "l", "o"]

4、for...of循环:

var str = "hello";  
var arr = [];  
for (let i of str) {  arr.push(i);  
}  
console.log(arr); // 输出:["h", "e", "l", "l", "o"]

5、Array.prototype.map()方法
可以通过回调函数对每个元素进行操作,适用于需要对字符串进行转换的情况

var str = "hello";  
var arr = Array.prototype.map.call(str, function (i) {  return i;  
});  
console.log(arr); // 输出:["h", "e", "l", "l", "o"]

数组转为字符串

1、join()方法

var arr = ["h", "e", "l", "l", "o"];  
var str = arr.join("");  
console.log(str); // 输出:hello

2、toString()方法
只能使用逗号作为分隔符,如果需要按照其他方式连接数组中的元素,需要用其他方法。

var arr = ["h", "e", "l", "l", "o"];  
var str = arr.toString();  
console.log(str); // 输出:h,e,l,l,o

3、扩展运算符(…)和字符串的+操作符

var arr = ["h", "e", "l","l","o"];  
var str = "" + [...arr];  
console.log(str); // 输出:h,e,l,l,o

4、Array.prototype.reduce()方法和字符串的+操作符
可以自定义连接方式,通过回调函数对每个元素进行操作

var arr = ["h", "e", "l","l","o"];  
var str = arr.reduce((acc, val) => acc + val, "");  
console.log(str); // 输出:hello

5、Array.prototype.map()方法和字符串的join()方法
可以使用指定的分隔符连接数组元素

var arr = ["h", "e", "l","l","o"];  
var str = arr.map(item => item).join("");  
console.log(str); // 输出:hello

http://www.lryc.cn/news/334590.html

相关文章:

  • 计算机网络——40各个层次的安全性
  • OpenHarmony实战:Combo解决方案之W800芯片移植案例
  • 【数据结构】数组(稀疏矩阵、特殊矩阵压缩、矩阵存储、稀疏矩阵的快速转置、十字链表)
  • nginx 配置访问地址和解决跨域问题(反向代理)
  • 支持向量机(SVM)白话之个人理解(学习记录)
  • 【运输层】TCP 的可靠传输是如何实现的?
  • K8s技术全景:架构、应用与优化
  • Java的异常机制
  • 考虑预同步的虚拟同步机T型三电平逆变器并离网MATLAB仿真模型
  • 记一次k8s取证检材过期的恢复
  • 【网站项目】自助购药小程序
  • Ubuntu22.04修改默认窗口系统为X11
  • 延时队列实现实战:如何利用 RabbitMQ 实现延时队列,以满足特定延迟处理需求
  • 关于在Ubuntu上配置mysql踩的一些坑
  • JSBridge原理 - 前端H5与客户端Native交互
  • 【Java EE】Spring请求如何传递参数详解
  • 菜鸟笔记-Numpy常用函数用法汇总
  • tensorflow.js 如何使用opencv.js通过面部特征点估算脸部姿态并绘制示意图
  • Linux命令-dpkg-divert命令(Debian Linux中创建并管理一个转向列表)
  • flex: 1 是哪些属性的缩写?
  • python基于opencv实现数籽粒
  • OpenCV图像处理——基于OpenCV的ORB算法实现目标追踪
  • 13.JavaWeb XML:构建结构化数据的重要工具
  • 鸿蒙OS实战开发:【多设备自适应服务卡片】
  • 深度学习基础之一:机器学习
  • Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单视频处理实战案例 之五 简单指定视频某片段重复播放效果
  • ARXML处理 - C#的解析代码(二)
  • 关于华为即将举行的鸿蒙春季沟通会的新闻报道
  • MySQL视图及如何导入导出
  • 文心一言上线声音定制功能;通义千问开源模型;openAI又侵权?