javascript - lodash/underscore ,搜索对象的所有属性并转换它们

标签 javascript underscore.js lodash

我有一个对象,其中包含各种属性(和子属性),可能是字符串、函数、日期等。

我想递归循环所有属性和子属性,如果它们是字符串,我想通过函数运行它们来转换它们。

具体来说,我想在对象中搜索属性,这些属性是包含 ISO 日期格式的字符串,并将它们转换为看起来友好的日期,但这在这里可能并不重要,因为我已经知道如何转换字符串。

无论如何,我尝试了cloneDeep,但这似乎并没有按照我想要的方式工作。有没有一个函数可以做到这一点?

最佳答案

这似乎足够有用:https://github.com/documentcloud/underscore-contrib/ ,特别是the walk extension .

_.walk.preorder(yourObject, function (value, key, parent) {
    if ( _.isString(value) ) {
       parent[key] = "transformed " + parent[key];
    }
});

关于javascript - lodash/underscore ,搜索对象的所有属性并转换它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22645130/

相关文章:

javascript - 无法将 lodash 部分应用于使用 bluebird promisifyAll 创建的函数

javascript - 过滤数组并匹配至少一个条件

javascript - ng-click 不触发,深入 ui-views

javascript - 主干 View - 跨组件通信

javascript - 如何获取价格 x 和 y 之间的条目?

javascript - 使用其他数组对数组对象进行排序

javascript - 为什么javascript函数原型(prototype)需要修复构造函数?

javascript - 使用 angular-mocks/jasmine 测试服务 - TypeError : undefined is not an object

javascript - 如何在 2 个 html 元素之间交换两个 id?

javascript - 使用下划线列出键的所有值