Javascript 使用dottie js访问数组中的元素(使用索引)

Javascript 使用dottie js访问数组中的元素(使用索引),javascript,eval,Javascript,Eval,我正在使用dottie安全地访问对象中的值。像这样的工作 var dottie = require("dottie") var x = { names: [{name: 'hello'},{name: 'world'}] } dottie.get(x, 'names') 但是,我看到一些问题,例如: var dottie = require("dottie") var x = { names: [{name: 'hello'},{name: 'world'}] } dottie.get(x,

我正在使用dottie安全地访问对象中的值。像这样的工作

var dottie = require("dottie")
var x = { names: [{name: 'hello'},{name: 'world'}] }
dottie.get(x, 'names')
但是,我看到一些问题,例如:

var dottie = require("dottie")
var x = { names: [{name: 'hello'},{name: 'world'}] }
dottie.get(x, 'names[0]')

是否有任何库允许我安全地执行以下操作?基本上是针对对象求值表达式?

Lodash
\uu.get()
可以帮助您处理案例1和案例2,而案例3也需要
\uu.last()

注意:导入此用例的整个lodash库在web浏览器中是一种过激行为,因此您应该使用树抖动、webpack和babel lodash插件来减小大小,或者只导入和包

var x={name:[{name:'hello'},{name:'world'}]}
log(u.get(x,'names'))
var x={name:[{name:'hello'},{name:'world'}]}
console.log(u.get(x,'names[0]'))
var x={name:[{name:'hello'},{name:'world'}]}
console.log(u.last(u.get(x,'names')))
var dottie = require("dottie")
var x = { names: [{name: 'hello'},{name: 'world'}] }
dottie.get(x, 'names[names.length-1]')