ES6 字符串、数组、对象之间的转换

5,442 阅读1分钟

下面介绍一个方法

[] :  数组

{}:对象

es6 对象转数组

1)entries方法

let  obj={

name:"wz",

age:"12",

sex:"女"

}

console.log(Object.values(obj))

let arr=Object.values(obj)

console.log(Object.entries(obj))

2)push方法

let dataList = []

let objectData1 = {

test: '测试',

111:'成功'

}

let objectData2 = {

key1: 'value1',

key2:'value2'

}

dataList.push(objectData1)

dataList.push(objectData2)

console.info("dataList",dataList)

es6 数组转对象

const arr = [
  { key: "id", name: "编号" },
  { key: "name", name: "名称" },
];

const obj = Object.fromEntries(arr.map(item => [item.key, item]));

console.log(obj);

// 输出
// {
//    id: { key: "id", name: "编号" },
//    name: { key: "name", name: "名称" }
// }

字符串 转 数组(push)

let str1 = 'test'

let srt2 = '111'

let list = [ ]

list.push(str1)

list.push(srt2)

console.info("list",list)

数组 转 字符串(join(","))

list:['test','111']

let str3 = list.join(',') // 逗号分隔

console.info('str3', str3)

字符串转对象

1)字符串作为对象的value

let str1 = 'test'

let srt2 = '111'

let objectData = {

key1: str1,

key2: srt2

}

console.info("objectData",objectData)

2)字符串作为对象的key

let str1 = 'test'

let srt2 = '111'

let objectData = {}

objectData[str1] = '测试'

objectData[srt2] = '成功'

console.info("objectData",objectData)

对象属性操作

1)添加属性

      let objectData = {        key1: 'value1',        key2:'value2'      }      objectData.key3 = 'value3'      console.info("objectData",objectData)

打印如下

2)对象合并Object.assign()

Object.assign方法的第一个参数是目标对象,后面的参数都是源对象

      let test= { a: 1 };       let source1 = { b: 2 };      let source2 = { c: 3 };       Object.assign(test, source1, source2);      console.info("test",test)

打印如下

3) 删除属性

    let objectData = {        key1: 'value1',        key2:'value2',        key3:'value3'      }      delete objectData.key3      console.info("objectData",objectData)

打印如下

4)修改属性名

    // 将key3改为test      let objectData = {        key1: 'value1',        key2:'value2',        key3:'value3'      }      // 先把想要修改属性对应的value拿到      let str = objectData.key3      objectData.test = str      // 删除key3      delete objectData.key3      console.info("objectData",objectData)

打印如下

4) 取对象属性值 (可以用Object.keys方法)

      let objectData = {        key1: 'value1',        key2:'value2',        key3:'value3'      }       Object.keys(objectData).map((key)=>{         console.info("objectData[key]",objectData[key]) // 获取到属性对应的值,做一些处理       })

打印如下