亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

遍歷JSON對象javascript

遍歷JSON對象javascript

慕容708150 2019-11-12 15:00:47
我很難找到一種以我想要的方式遍歷此JSON對象的方法。我在這里只使用Javascript。首先,這是對象{"dialog":{    "dialog_trunk_1":{        "message": "This is just a JSON Test"    },    "dialog_trunk_2":{        "message": "and a test of the second message"    },    "dialog_trunk_3":    {        "message": "This is a test of a bit longer text. Hopefully this will at the very least create 3 lines and trigger us to go on to another box. So we can test multi-box functionality, too."    }}}現在,我只是在嘗試基本方法來訪問此對象上的每個dialog_trunk。理想情況下,我想遍歷該對象,并為每個主干顯示其message值。我已經嘗試過使用for循環動態地生成dialog_trunk的名稱/編號,但是我無法使用對象名稱的字符串來訪問該對象,因此我不確定從這里開始。
查看完整描述

3 回答

?
拉丁的傳說

TA貢獻1789條經驗 獲得超8個贊

for..in為此使用循環。確保檢查對象是否擁有屬性,或者是否也顯示所有繼承的屬性。一個例子是這樣的:


var obj = {a: 1, b: 2};

for (var key in obj) {

  if (obj.hasOwnProperty(key)) {

    var val = obj[key];

    console.log(val);

  }

}

或者,如果您需要遞歸來遍歷所有屬性:


var obj = {a: 1, b: 2, c: {a: 1, b: 2}};

function walk(obj) {

  for (var key in obj) {

    if (obj.hasOwnProperty(key)) {

      var val = obj[key];

      console.log(val);

      walk(val);

    }

  }

}

walk(obj);


查看完整回答
反對 回復 2019-11-12
?
開心每一天1111

TA貢獻1836條經驗 獲得超13個贊

這是我的遞歸方法:


function visit(object) {

    if (isIterable(object)) {

        forEachIn(object, function (accessor, child) {

            visit(child);

        });

    }

    else {

        var value = object;

        console.log(value);

    }

}


function forEachIn(iterable, functionRef) {

    for (var accessor in iterable) {

        functionRef(accessor, iterable[accessor]);

    }

}


function isIterable(element) {

    return isArray(element) || isObject(element);

}


function isArray(element) {

    return element.constructor == Array;

}


function isObject(element) {

    return element.constructor == Object;

}


查看完整回答
反對 回復 2019-11-12
  • 3 回答
  • 0 關注
  • 469 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號