gpt4 book ai didi

javascript - 使用 jquery 或 javascript 将逗号分隔的键和值字符串转换为对象

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:47:49 25 4
gpt4 key购买 nike

我像这样使用 JavaScript 读取 HTML 元素的属性:

<table data-option="pageSize:10, pageNumber:1, rowNumber:true"></table>

我将有这样一个字符串:

attrs="pageSize:10, pageNumber:1, rowNumber:true";

我有一个像这样的键和值 JavaScript 对象:

obj={pageSize:12, pageNumber:1, rowNumber:true}

我想将我的属性转换为像 obj 这样的对象。

最佳答案

您可以自己迭代并创建对象

var attr = $('table').data('option');
var obj = {};

$.each(attr.split(','), function(index, item) {
var parts = $.map(item.split(':'), function(part) {
part = $.trim(part);
if ( +part == part ) return +part
else if ( part === 'true' ) return true
else if ( part === 'false') return false
else return part;
});
obj[parts[0]] = parts[1];
});

var attr = $('table').data('option');
var obj = {};

$.each(attr.split(','), function(index, item) {
var parts = $.map(item.split(':'), function(part) {
part = $.trim(part);
if ( +part == part ) return +part
else if ( part === 'true' ) return true
else if ( part === 'false') return false
else return part;
});
obj[parts[0]] = parts[1];
});

document.body.innerHTML = '<pre>' + JSON.stringify(obj, null, 4) + '</pre>';
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table data-option="pageSize:10, pageNumber:1, rowNumber:true"></table>

关于javascript - 使用 jquery 或 javascript 将逗号分隔的键和值字符串转换为对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34471524/

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