Преобразовать значения объекта в верхний регистр - PullRequest
0 голосов
/ 14 октября 2019

У меня есть объект, который я получаю, выполнив JSON.stringify (myObject)

Теперь я хочу преобразовать все значения (не ключи) в верхний регистр.

Как я могусделать это наилучшим образом в TypeScript ?

myObj = {
  "name":"John",
  "age":30,
  "cars": [
    { "name":"Ford", "models":[ "Fiesta", "Focus", "Mustang" ] },
    { "name":"BMW", "models":[ "320", "X3", "X5" ] }
  ]
 } 

TO

 myObj = {
  "name":"JOHN",
  "age":30,
  "cars": [
    { "name":"FORD", "models":[ "FIESTA", "FOCUS", "MUSTANG" ] },
    { "name":"BMW", "models":[ "320", "X3", "X5" ] }
  ]
 } 

Я уже смотрел на это, но, возможно, есть лучший способ достичьэто. -> Как преобразовать строковые значения JSON в нижний регистр в Javascript?

1 Ответ

3 голосов
/ 14 октября 2019

Просто сделайте глубокую итерацию через ваш объект и вызовите функцию toUpperCase () для строковых значений, например:

var myObj = {
    "name": "John",
    "age": 30,
    "cars": [
        { "name": "Ford", "models": ["Fiesta", "Focus", "Mustang"] },
        { "name": "BMW", "models": ["320", "X3", "X5"] }
    ]
};

function iterate(obj) {
    for (var key in obj) {
        if (obj[key] !== null && typeof obj[key] === "object") {
            iterate(obj[key]);
        } else if (obj[key] !== null && typeof obj[key] === "string") {
            obj[key] = obj[key].toUpperCase();
        }
    }
}

iterate(myObj);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...