如何将对象中的所有属性值转换为字符串类型?

asw1984

我正在使用包含属性的对象,该属性的值可以是字符串类型或数字类型。一些属性是嵌套对象,并且这些嵌套对象还包含属性,其值可以是字符串类型或数字类型。以以下对象为简化示例:

var myObj = {
  myProp1: 'bed',
  myProp2: 10,
  myProp3: {
    myNestedProp1: 'desk',
    myNestedProp2: 20
  }
};

我希望所有这些值都是字符串类型,因此任何类型为数字的值都需要转换。

实现这一目标的最有效方法是什么?

我试过使用for..in,还使用了Object.keys,但未成功。任何见解将不胜感激。

马丁·阿达梅克

Object.keys应该很好,找到嵌套对象时只需要使用递归即可。要将某些内容转换为字符串,只需使用此技巧即可

var str = '' + val;

var myObj = {
  myProp1: 'bed',
  myProp2: 10,
  myProp3: {
    myNestedProp1: 'desk',
    myNestedProp2: 20
  }
};

function toString(o) {
  Object.keys(o).forEach(k => {
    if (typeof o[k] === 'object') {
      return toString(o[k]);
    }
    
    o[k] = '' + o[k];
  });
  
  return o;
}

console.log(toString(myObj));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将对象数组中的所有值转换为字符串?

为什么要在 Javascript 中将对象中的所有值转换为字符串?

如何将对象中的字符串值转换为数字?

如何将对象转换为带有格式字符串的字符串?

如何将json中的数据类型从数字转换为字符串,同时保持所有对象值原样打字稿

如何将对象类转换为字符串

如何将对象转换为字符串php

Android:如何将对象转换为字符串

如何将对象转换为字符串javascript

输入字符串/对象格式错误,即%H并非所有行都存在时,如何将对象或字符串转换为时间格式

如何将对象的最深嵌套属性的值设置为其前面所有键的字符串?

如何将对象键和值转换为格式化的字符串?

如何将对象的键和值转换为逗号分隔的字符串?

如何将对象的所有属性值用作类型?

如何将对象数组转换为字符串数组而不丢失Dataweave中的键?

Java-如何将对象从自己的类转换为主类中的字符串?

如何基于Java中的属性值将对象列表转换为字符串列表?

如何将字符串转换为对象属性?

如何将字符串类型转换为 Typescript 中的一种对象类型?

在对象中找到所有Date类型的属性,并将相同的属性从字符串转换为克隆对象中的Date对象

如果值有逗号,则循环并将对象字符串值转换为对象

如何将字符串转换为json,并在PHP中获取所有键的值

在Swift中,如何将具有任意类型值的字典转换为JSON字符串

熊猫如何将所有字符串值转换为浮点数

如何将所有行值从数据表转换为字符串?

如何将对象数组转换为 Angular 中的字符串数组以显示在 Angular 材料表中?

如何将点表示法中的字符串转换为带有值的嵌套对象?

如何将具有数组值的对象转换为字符串并插入到我的 html 中

如何将存储在javascript变量中的字符串直接转换为对象属性?