应用场景
html的form中包含多个checkbox组件,希望能够在用户选择后以数组的形式返回用户的选择结果(指的是value中的值):
得到的结果示例为:
['SO2', 'NOX', 'CO', 'PM']
JQuery解决流程
正常的JQuery思路为:
var variables = $('input[name=variables]:checked').map(function(){
return this.value;
});
但map返回的结果并不是array,variables的变量类型是object,所以需要再加一步:
var variables = $('input[name=variables]:checked').map(function(){
return this.value;
}).toArray();
这样就转换好了,而这个数组是JSON.stringify()可以转换的,否则的话像原先的结果会报错:
JSON.stringify, avoid TypeError: Converting circular structure to JSON