1. 程式人生 > >JS物件去掉下劃線屬性

JS物件去掉下劃線屬性

JS物件去掉下劃線屬性

最近在寫node端,所以遇到資料庫直接返回資料帶下劃線的情況

需要把下劃線屬性換成駝峰屬性

封裝了兩個方法

  • 將下劃線換為駝峰

const replaceUnderLine = (val, char = '_') => {
  const arr = val.split('')
  const index = arr.indexOf(char)
  arr.splice(index, 2, arr[index+1].toUpperCase())
  val = arr.join('')
  return
val
} console.log(replaceUnderLine('test_prop')) // testProp
  • 替換物件中的下劃線屬性

const  filterUnderLine = (obj, char = '_') => {
  const arr =  Object.keys(obj).filter(item => item.indexOf(char) !== -1)
  arr.forEach(item => {
    const before = obj[item]
    const
key = replaceUnderLine(item)
   obj[key] = before    delete obj[item] })  return obj } console.log(filterUnderLine({test_name: 'frank'})) // { testName: 'frank }

當然其中的_可以換成任意字元,只要在方法的第二個引數傳入就可以了

喜歡就點個贊吧,謝謝~