最近做项目,前后端,又遇到字符串对象的问题,立马想到,
以前我写过的一个非常好用的两个静态转换函数,专门用于 转换 不规范的字符串对象,和字符串数组

/***  转换字符串对象为真正的Object对象*  a = parseToObject({aa:'ko be',b:" 2"})b = parseToObject({aa:'kobe',b:1})c = parseToObject("{aa:'ko be',b: 1}")d = parseToObject("{aa:'kobe',b:'1'}")e = parseToObject({"a a":'kobe',b:1})f = parseToObject("{a a:'kobe',b:'1'}")输出:{ aa: 'ko be', b: 2 }{ aa: 'kobe', b: 1 }{ aa: 'ko be', b: 1 }{ aa: 'kobe', b: 1 }{ 'a a': 'kobe', b: 1 }{ 'a a': 'kobe', b: 1 }* @param {*} a */static parseToObject = (a: any): object => {try {const temp = (paramObject) => {let obj = {};if (typeof paramObject == "object") {Object.keys(paramObject).forEach(x => {obj[x.trim()] = isNaN(paramObject[x]) == false ? Number(paramObject[x]) : paramObject[x];})}return obj;}if (a.constructor.name == "String") {let index = a.indexOf("{")let lastIndex = a.lastIndexOf("}");let str = a.substr(index + 1, lastIndex - 1);let str2 = str.replace(/[\'\"\\\/\b\f\n\r\t]/g, '');let json = querystring.parse(str2, ',', ':')return temp(json)} else if (a.constructor.name == "Object") {return temp(a);} else {return {};}} catch (e) {return {};}}/*** @brief 用于将一个字符串的数组对象转换为数组对象* "[1,2,3]"  ===>    [1,2,3] (去掉引号的过程)* @param stringArray* @returns {Array}*/static stringArrayParse = (stringArray) => {let ra = [];if (stringArray) {if (Array.isArray(stringArray)) {ra = stringArray} else {let index = stringArray.indexOf("[")let lastIndex = stringArray.lastIndexOf("]");let str = stringArray.substr(index + 1, lastIndex - 1);if (str) {ra = str.split(",")}}}return ra.map(x => {if (x.indexOf) {// 如果数内容是一个object的数组,则将字符转为objectif (x.indexOf("{") > -1 && x.indexOf("}") > 0) {//上面定义函数return Util.parseToObject(x);}}return x;})}

javascript 字符串转对象相关推荐

  1. 【javascript高级教程】JavaScript 字符串(String) 对象

    String 对象用于处理已有的字符块. JavaScript 字符串 一个字符串用于存储一系列字符就像 "John Doe". 一个字符串可以使用单引号或双引号: var car ...

  2. JavaScript内置对象(内置对象、查文档(MDN)、Math对象、日期对象、数组对象、字符串对象)

    目录 JavaScript内置对象 内置对象 查文档 MDN Math对象 Math概述 案例一:封装自己的对象 随机数方法 random() 案例一:猜数字游戏 日期对象 Date 概述 Date( ...

  3. javascript字符串转化成对象

    在javascript中,可以使用"JSON.parse()"方法来将字符串转为对象,该方法可以解析一个字符串(以JSON格式编写)并返回一个JavaScript对象,语法格式&q ...

  4. JavaScript字符串对象的方法详解

    JavaScript字符串对象的方法详解 前面的博客我们说到了字符串对象的创建,属性及字符串的拼接.现在来详细讲一下字符串的方法. 1.ES6之前的方法 // js字符串的方法var str=&quo ...

  5. 创建健壮的isArray()函数(JavaScript中判断对象类型的种种方法)

    我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...

  6. 第一百一十四节,JavaScript文档对象,DOM进阶

    JavaScript文档对象,DOM进阶 学习要点: 1.DOM类型 2.DOM扩展 3.DOM操作内容 DOM自身存在很多类型,在DOM基础课程中大部分都有所接触,比如Element类型:表示的是元 ...

  7. 检查值是否是JavaScript中的对象

    如何检查值是否是JavaScript中的Object? #1楼 尝试这个 if (objectName instanceof Object == false) {alert('Not an objec ...

  8. 将JavaScript字符串全部转换为小写吗?

    如何将JavaScript字符串值转换为所有小写字母? 示例:从"您的名字"到"您的名字" #1楼 请注意,该功能仅适用于STRING对象. 例如,我正在使用一 ...

  9. Javascript:字符串分割split()妙用

    概述: split() 方法将字符串分割为字符串数组,并返回此数组 语法格式: stringObject.split(separator,limit) 参数说明: 注意:如果把空字符串 (" ...

最新文章

  1. PKUWC2020游记与题面整理
  2. java udp传输文件_JAVA使用UDP收发文件
  3. Python——相对路径的学习笔记
  4. 守望先锋 获取cdn配置_英特尔酷睿i5 9400F万金油配置推荐 适合吃鸡 守望先锋
  5. SkeyeARS 全景AR增强监视系统解决方案
  6. 发布了一个几行代码的作品,不过挺实用的:),有关fastreport的
  7. win7计算机搜不到无线网,怎么解决win7笔记本搜索不到WiFi
  8. 计算机科学与技术培养计划,计算机科学与技术专业培养方案(2017版).PDF
  9. 【Java】命名规范
  10. 解决Win7缺失MSVCR120.DLL问题
  11. php计算两个坐标(经度,纬度)之间的方位角
  12. 基于云效Flow配置 Jenkins 源
  13. 堆排序和快排与归并排序
  14. 黑马视频免费领取了。
  15. 让Windows XP系统启动时不输入密码自动登录
  16. OpenGL3.3视锥体
  17. Java基础番外篇二(Java修饰符讲解)
  18. ActiveMQ--ActiveMQ简介
  19. excel是计算机软件吗,win7网页提示发生错误请确认您的电脑是否安装了excel软件怎么办...
  20. 这些诗词你知道一句,却不知全诗!

热门文章

  1. GPS中经纬度的十进制和六十进制的转换
  2. OpenLayer示例网址汇总
  3. 光耦的饱和导通情况下VCE和IC,If关系
  4. 小米Android rom,小米打造基于安卓11的ROM来了:米10尝鲜
  5. 不要把时间浪费在无用的社交上
  6. Apache Hive 问题 Exception: Too many counters: 121 max=120
  7. 工作中使用到的单词(软件开发)_2023_0316备份
  8. 基于SSM的共享单车管理系统 JAVA
  9. 方太能否在高端厨电变革中突围?
  10. 《计算机科学经典着作》(Computer Science)