如何在数组中推送以变量作为键和值的新对象,我也不确定我是否用方法替换做对了
How to push new object in array with variables as key and value, also im not sure that i do it right with methode replace
dataValidation = "min:7 max:20 alphanumeric required";
var params = [];
dataValidation.replace(/([^'s]+).?/g, function(a, b){
var split = b.split(':');
if (split[1])
params.push([split[0]] = split[1]);
else
params.push([split[0]] = true);
return
});
我的代码,我想创建带有键和值的对象数组,split[0] 和 split[1],但结果是这样的
["7"、"20",真,真]
而不是
[{min:7}, {max:20}...].
我也不确定在替换中创建函数是最好的方法。
通过修改代码解决了它
dataValidation.replace(/([^'s]+).?/g, function(a, b){
var split = b.split(':');
var obj = {};
if (split[1])
obj[split[0]] = split[1];
else
obj[split[0]] = true;
params.push(obj);
return
});
//替代方案,因为正则表达式是贪婪的
var output = [], tmp;
['foo:bar','bar:baz'].forEach(function(el, idx, arr) {
tmp = {};
tmp[el.substr(0,el.indexOf(':'))] = el.substr(el.indexOf(':')+1);
output.push(tmp);
});
console.log(output);
//> [{bar:"baz"},{foo:"bar"}]
相关文章:
- 如何确定对象内部包含对象的JSON的长度
- 微风得到的是实体而不是对象的集合
- 类型错误'未定义'不是对象(正在评估'navigator.connection.type'
- 保存id数组's而不是对象
- 在这个使用hasOwnProperty的对象扩展程序中有一个错误,I'我不确定那个bug是什么,也不确定这个扩展
- 返回 JavaScript 类值而不是对象引用
- TypeError:undefined不是对象(正在评估'newWindow.focus')
- HTML5 Canvas toDataURL(“image/png”)适用于一些绘画,而有些则不然,不确定原因
- 不确定我在PHP AJAX中使用的是什么开发模式
- 为什么Angularjs服务返回的是字符数组而不是对象数组
- 传递数量不确定的可能嵌套的对象属性
- 如何创建不确定数量的数组来放置 JSON 对象 (JavaScript)
- 如何在数组中推送以变量作为键和值的新对象,我也不确定我是否用方法替换做对了
- 将对象作为函数参数传递.不确定如何访问这些值
- 非常基本的对象原型不确定为什么是't工作
- 不确定使用Spring加载SELECT对象的正确方法
- 不确定为什么我得到[对象对象]返回
- 排序数组对象与点,字母,数字.我能按数字排序,但混合值很难排序.不确定是否有可能做对
- JavaScript:不确定如何调用和应用与这个函数中的参数对象相关
- JS运行函数在多个dim对象失败.不确定这是否可能