将JSON字符串的所有key值首字母改为大写
//将JSON字符串'{"name": "jack","age":"19","address": "beijing"}'的所有key值首字母改为大写:'{"Name":"jack","Age":"19","Address":"beijing"}'
1 function toUpperCasel(json){
2 //将json字符串解析为Object对象
3 let obj = JSON.parse(json)
4 let newObj = {}
5 let tempKey, currentValue, upperCase, arr
6 //遍历obj对象的属性——key值
7 for(let i in obj){
8 currentValue = obj[i]
9 //字符串切割为数组
10 arr = i.split('')
11 //数组的第一个元素转换为“大写字母”
12 upperCase = arr[0].toUpperCase()
13 //替换第一个元素
14 arr.splice(0, 1, upperCase)
15 //将数组拼接为字符串——新key值(首字母大写)
16 tempKey = arr.join('')
17 //将新key值赋给newObj
18 newObj[tempKey] = currentValue
19 }
20 //将newObj转换为json字符串,并返回
21 let newJson = JSON.stringify(newObj)
22 return newJson
23 }
24
25 let json = '{"name": "jack","age":"19","address": "beijing"}'
26 console.log(toUpperCasel(json))
注意点:
//将字符串每个字符都分割,注意参数
str.split('')
//将数组里元素全部拼接到一个字符串中,注意参数
arr.join('')
//slice提取部分数组,并返回新数组,不会更改原数组
arr0 = arr.slice(0,1)
//用splice替换数组中元素,会更改原数组
arr.splice(0,1, 'ABC')
//用splice删除数组中元素,返回被删除元素,并会更改原数组
let deleteItem = arr.splice(0,1)
-------自学记录。欢迎指出错误,其它勿扰。-------