我有一个包含逗号分隔名称和可选值的字符串,这些值分隔了这样的值:
var str = "PowerOn:On,ValidLocation, temp:25";
Run Code Online (Sandbox Code Playgroud)
我想将它转换为可以通过名称访问值的对象或json,如下所示:
var a = {"PowerOn":"On", "ValidLocation":"true", "temp":25};
var result = a.PowerOn;
alert(result);
Run Code Online (Sandbox Code Playgroud)
要么
var a = {"PowerOn":"On", "ValidLocation":"true", "temp":25};
var result = a["PowerOn"];
alert(result);
Run Code Online (Sandbox Code Playgroud)
注1:如果名称没有值,则默认为true.
更新:
注2:如果列表中不存在名称,则其值为false:ex:
var a = {"PowerOn":"On", "ValidLocation":"true", "temp":25};
var result = a.Alarm
//result must be false
Run Code Online (Sandbox Code Playgroud)
var str = "PowerOn:On,ValidLocation, temp:25",
arr = str.split(','),
obj = {}
for (var i=0; i<arr.length; i++) {
var parts = arr[i].split(':');
obj[parts[0]] = parts[1] || true;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
163 次 |
| 最近记录: |