字符串(string),数组(array),对象(object),互相转化的方法

字符串转数组:

方法:str.split(’,’)
这里用的是“,”做为分割符,换成其他也是可以的,例如str.split(‘星’)

var str1= '海王星,冥王星,地球,水星,金星,火星,土星,木星'
console.log(str1.split(','))

输出结果:
在这里插入图片描述

字符串转对象:

经常会有后台接口传过来的数据是一串字符,而前端需要的是一个对象;如下所示,我们需要把字符串转成对象,可以用JSON.parse()方法

var str2 = "{'title':'标题,'icon: '图标,'url: 'https://blog.csdn.net/}"
 console.log(JSON.parse(str2))

输出结果:
在这里插入图片描述

数组转字符串

方法一:join() 方法
join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。

var arr1 = [1,2,3,4,5,6,7,8,9]
var end  = arr1.join(",")
console.log(end)
console.log(typeof(end))

输出:1,2,3,4,5,6,7,8,9
输出:string

方法二:toString()方法

var arr2 = [1,2,3,4,5,6]
var end = arr2.toString()
console.log(end)
console.log(typeof(end))

输出:1,2,3,4,5,6
输出:string

方法三:利用toString()方法的隐藏属性,例如字符串拼接

var a= ['ww','ee','rr']
var b= ['ww','ee','rr']
var end = a + b; 
console.log(end); 
console.log(typeof(end))

输出:ww,ee,rrww,ee,rr
输出:string

方法四:JSON.stringify() 这个方法一般是用来对象转字符串的,在这里也适用

var arr1 = [1,2,3,4,5,6,7,8,9]
JSON.stringify(arr1)

输出:"[1,2,3,4,5,6,7,8,9]"

数组转对象

方法一:

var arr4 = ["海王星","冥王星","地球"]
Object.assign({},arr4)

输出:{0: “海王星”, 1: “冥王星”, 2: “地球”}

方法二:用遍历方法,forEach,map 都可以

var var5 = ["海王星","冥王星","地球"]
var obj = {}
var5.forEach((item,index)=>{
  obj[index] = item
})
console.log(obj)

输出:{0: “海王星”, 1: “冥王星”, 2: “地球”}

若是遇上复杂的数组,也是适用的

var formArr =  [
  {name: "one", value: "11111"},
  {name: "two", value: "22222"},
  {name: "three", value: "33333"},
  {name: "four", value: "44444"}
];
var obj={ };
formArr.map(function (e, item) {
  obj[e.name] = e.value;
})
console.log(obj)

输出:{one: “11111”, two: “22222”, three: “33333”, four: “44444”}

对象转字符串:

var obj = {one: "11111", two: "22222", three: "33333", four: "44444"}
JSON.stringify(obj)

输出:"{“one”:“11111”,“two”:“22222”,“three”:“33333”,“four”:“44444”}"

对象转数组:

方法一:单独将key值转成数组,或单独将value值转化为数组

var obj = {one: "11111", two: "22222", three: "33333", four: "44444"}
Object.keys(obj)  
Object.values(obj)

输出: [“one”, “two”, “three”, “four”]
输出:[“11111”, “22222”, “33333”, “44444”]

方法二:

var obj = {one: "11111", two: "22222", three: "33333", four: "44444"};
var arr = [];
for (let i in obj) {
    let o = {};
    // console.log(i,obj[i])
    o[i] = obj[i];
    arr.push(o)
}
console.log(arr);

在这里插入图片描述

简单总结了一下,望指正!!!
开博两年,第一篇哈哈哈,纪念一下……^ _ ^

  • 7
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值