gpt4 book ai didi

javascript - Jquery 创建/读取关联数组

转载 作者:行者123 更新时间:2023-12-01 01:43:14 27 4
gpt4 key购买 nike

我有以下数据

var field = fieldA|fieldB|fieldC
var values = 1|2|3

我需要做的是创建一个像这样的数组:

fieldA:1 fieldB:2 fieldC:3

这将使用 JSON.stringify 设置为 cookie,然后我将 parseJSON 将值返回到数组中。

然后我需要能够设置这些读取此数组,以便我可以将字段设置为正确的值。

例如 fieldAfieldBfieldC 在页面加载时均设置为 0,我将阅读cookie 并将这些字段设置为数组中的值;

fieldA = 1
fieldB = 2
fieldC = 3

这是我迄今为止所拥有的代码片段。 Cookie一直保存为[]

编辑:需要使用对象,因为某些值不是数字。更改了 arrayFinal = [];到 arrayFinal = {};

Cookies.set("fields", JSON.stringify(builSearchString()));


function builSearchString() {
var fields = $('#advanced input').map(function () {
return this.id;
}).get().join('|');
var values = $('#advanced input[type=text]').map(function () {
return this.value;
}).get().join('|');
var array = fieldToValue(fields, values);
return array;


function fieldToValue(fields, values) {
var fieldArr = fields.split('|'),
valueArr = values.split('|'),
arrayFinal = [];
for (i = 0; i < fieldArr.length; i++)
if (fieldArr[i] && valueArr[i])//validation
arrayFinal[fieldArr[i]] = valueArr[i];
return arrayFinal;
}

function getAdvancedSearchQuery() {
var cookie = Cookies.get("fields")
var array = $.parseJSON(cookie);
}

最佳答案

一个简单的函数就可以解决这个问题,试试这个:

function fieldToValue(fields,values){
var fieldArr = fields.split('|'),
valueArr = values.split('|'),
arrayFinal = [];
for (i = 0; i < fieldArr.length; i++)
if(fieldArr[i] && valueArr[i])//validation
arrayFinal[fieldArr[i]] = valueArr[i];
return arrayFinal;
}

并调用

fieldToValue("fieldA|fieldB|fieldC","1|2|3");

关于javascript - Jquery 创建/读取关联数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33158942/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com