# set(object, path, val) ⇒ object

设置 object 对象中对应 path 属性路径上的值,如果 path 不存在,则创建

Returns: object -

返回修改后的对象


Author: liukun 919590347@qq.com

Param Type Description
object object

要修改的对象

path string | Array.<string, number>

要设置的对象路径

val any

要设置的值

Example

import { set } from '@wont/utils'
const obj = { "editVal": 0, "editArrVal": [0], "setNestVal": {}, "setArrVal": [] }
set(obj, 'editVal', 2)  // returns { "editVal": 2, "editArrVal": [0], "setNestVal": {}, "setArrVal": [] }
set(obj, 'editArrVal[0]', 2)  // returns { "editVal": 2, "editArrVal": [2], "setNestVal": {}, "setArrVal": [] }
set(obj, 'setNestVal.setNestVal.setNestVal', 2)  // returns { "editVal": 2, "editArrVal": [2], "setNestVal": { setNestVal: { setNestVal: 2 } }, "setArrVal": [] }
set(obj, 'setArrVal[1]', 2)  // returns { "editVal": 2, "editArrVal": [2], "setNestVal": { setNestVal: { setNestVal: 2 } }, "setArrVal": [ empty, 2] }
set(obj, ['arr', 0], 0)  // returns { "editVal": 2, "editArrVal": [2], "setNestVal": { setNestVal: { setNestVal: 2 } }, "setArrVal": [ empty, 2], arr: [0] }