Интеллектуальное преобразование JSON

by Artem

JavaScript

'use strict';

var leader = {
  name: "Василий Иванович",
  age: 35
};

var str = JSON.stringify(leader, function(key, value) {
  if (key === 'name') {
    var tmpA = value.split(' ');
    var tmpO = {
      firstName: tmpA[0],
      lastName: tmpA[1]
    };
    return tmpO;
  }
  return value;
}, 4);
console.log(str);

var obj = JSON.parse(str, function(key, value) {
  if (key === 'name') {
    var firstName = value.firstName;
    var lastName = value.lastName;
    return `${firstName} ${lastName}`;
  }
  return value;
});
console.log(obj);