小编Dav*_*vid的帖子

字符串拆分为javascript对象

我有来自服务器的字符串:

//A
123|155-244
Run Code Online (Sandbox Code Playgroud)
  • 第一个数字总是表示'红色'
  • 数字后|总是意味着'绿色'
  • 数字后-总是意味着'蓝'

这里的问题是Green和Blue可以按任意顺序返回:

//B
123-244|155
Run Code Online (Sandbox Code Playgroud)

或者他们可能完全失踪:

//C
123|155 
Run Code Online (Sandbox Code Playgroud)

我需要一个返回一个数组/对象的函数来简化:

//A
var result = {red:"123", green:"155", blue:"244"}

//B
var result = {red:"123", green:"155", blue:"244"}

//C
var result = {red:"123", green:"155", blue:"0"}
Run Code Online (Sandbox Code Playgroud)

我已经尝试了两个函数,一个是获得Green而另一个是Blue,但我意识到它不能正常工作,具体取决于它们出现在字符串中的顺序.

var getGreen = function(myvar){
    return myvar.split('-'); 
};
var getBlue = function(myvar){
    return myvar.split('|'); 
};
Run Code Online (Sandbox Code Playgroud)

这样做有时会导致我的对象看起来像这样:

var result = {red:"123", green:"155", blue:"244|155"}
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

javascript split object

11
推荐指数
3
解决办法
687
查看次数

标签 统计

javascript ×1

object ×1

split ×1