2013-07-08 8 views

答えて

7

parse()機能を使用すると、解析されたデータを変換するために使用することができます引数としてコールバックを取ります。たとえば、年、月、日を表す数字のリストではなく、DateTimeオブジェクトとして日付フィールドを表現することができます。構文解析する第2引数として '復唱者'関数を指定します。

この関数は、各オブジェクトまたはリストプロパティが解析のために一度呼び出され、リバイバー関数の戻り値ではなく解析された値を用いている:

import 'dart:json' as json; 

void main() { 
    var jsonPerson = '{"name" : "joe", "date" : [2013, 10, 3]}'; 

    var person = json.parse(jsonPerson, (key, value) { 
    if (key == "date") { 
     return new DateTime(value[0], value[1], value[2]); 
    } 
    return value; 
    }); 

    person['name'];    // 'joe' 
    person['date'] is DateTime; // true 
} 
関連する問題