javascript - 遍历嵌套对象并改变值

标签 javascript jquery

我有一个包含用户数据和一些日期的对象。我想格式化这些日期(因为它们是这样交付的 2015-02-13T18:25:37+01:00)。

我想就地更改对象的值,但我该怎么做呢?

我这样遍历对象:

$.each(myObject, formatDates)
    var isDate = function(value) {
        return  (value!==null && !isNaN(new Date(value)))
    }

    var formatDates = function(key, value){
        if (isDate(value)) {
            // Change value here
            console.log("key:" + key + " value: " + value)
        }

        // Recursive into child objects
        if (value !== null && typeof value === "object") {
            $.each(value, formatDates)
        }
    }

最佳答案

你可以用这个

function iterate(obj) {
        for (var property in obj) {
            if (obj.hasOwnProperty(property)) {
                if (typeof obj[property] == "object") {
                    iterate(obj[property]);
                } else {
                  // do your date thing
                }
            }
        }
        return obj;
    }

iterate(object)

关于javascript - 遍历嵌套对象并改变值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29604366/

相关文章:

javascript - Jquery 实时附加多个 PHP 响应

javascript - 如何使用 Angular 根据选择下拉列表制作复选框值?

javascript - 使用 jQuery 选择列表值更改但不显示在 UI 中

javascript - 尝试使用 highChart 进行设计,但未显示颜色

javascript - 我怎样才能动态地增加输入控制...???js

javascript - 在 React 中创建更多元素

javascript - 使用 JQuery 打开弹出窗口并打印

javascript - PHP - DataTables 服务器端单独的列过滤仅提供第一页选择选项

javascript - "user is not associated to feed!"sequelizejs

javascript - 如何引用匿名函数Javascript的父参数