我试图在一组有点不规则的数据上执行字符串拆分,看起来像:
\n\tName: John Smith
\n\t Home: Anytown USA
\n\t Phone: 555-555-555
\n\t Other Home: Somewhere Else
\n\t Notes: Other data
\n\tName: Jane Smith
\n\t Misc: Data with spaces
Run Code Online (Sandbox Code Playgroud)
我想把它转换成一个元组/字典,我后来将分裂在冒号上:
,但首先我需要摆脱所有额外的空格.我猜一个正则表达式是最好的方法,但我似乎无法得到一个有效,下面是我的尝试.
data_string.split('\n\t *')
Run Code Online (Sandbox Code Playgroud) 首先,我知道技术上Javascript没有关联数组,但我不知道如何标题并获得正确的想法.
所以这是我的代码,
var status = new Array();
status['BOB'] = 10
status['TOM'] = 3
status['ROB'] = 22
status['JON'] = 7
Run Code Online (Sandbox Code Playgroud)
而且我想按值对它进行排序,这样当我稍后循环它时,ROB
首先是,然后BOB
等等.
我试过了,
status.sort()
status.sort(function(a, b){return a[1] - b[1];});
Run Code Online (Sandbox Code Playgroud)
但他们似乎都没有做任何事情.
在阵列之前和之后将阵列打印到控制台导致它以相同的顺序出现.