javascript - 如何更好地编写它,例如lodash

标签 javascript lodash

我想检查数组中的每个 child 我可以用例如写得更好吗? lodash

test[1] && test[1][2] && test[1][2][3] && doSomething

最佳答案

使用 lodash 获取/检查路径有 3 种常用方法:

  1. _。 get - 这将尝试根据路径获取值并在未找到该值时提供 default

  2. _。 has - 如果找到路径,这会给你 bool 结果 _。 hasIn - 这就像 has 但也会检查路径是对象的直接属性还是继承属性

  3. _。 result - 这将遍历路径并执行 any 函数以获取值或作为 _.get 否则(不存在函数)

    <

var data = [
        [],
        [
          [],
          [
           'hello',
	   function(){ return 'foo'}
          ]
        ]
    ];
		
console.log('get:', _.get(data, '1.1.0'))
console.log('has:', _.has(data, '1.1.0'))

console.log('result:', _.result(data, '1.1.0'))
console.log('result:', _.result(data, '1.1.1'))
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script>

这里的共同点是它们都接受一个 path 作为参数,它可以做你想做的事。只需提供最深路径,让这些方法为您检查/工作。

关于javascript - 如何更好地编写它,例如lodash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53523220/

相关文章:

javascript - 如何从 jquery ui 自动完成渲染列表中删除项目

javascript - 如何检查它是否有 jQuery 类?

javascript - 我可以在 Spidermonkey js shell 中使用 JSON 吗?

javascript - 如何计算数组中具有特殊形式的相同项目(javascript)

javascript - 操作和更改原始数组的键

javascript - UI5 TreeTable 滚动到以编程方式绑定(bind)到表的模型中的指定项目

javascript - 检测 Facebook 分享成功?

javascript - 使用 Lodash 对数字字符串数组进行排序

javascript - 映射 Javascript 数组并将其中的对象转换为特定格式?

javascript - 结合 Lodash 方法