html - jquery如何设置数组的键值
问题描述
我有这段非常丑陋的代码,它设置了 menu_items 数组的键 => 值。我想使用 map 函数从 ul 设置键和值,但无法解决,所以求助于这个。
如何使用 map 函数为 menu_items 设置键和值?
function ClothingSetup(clothing) {
var menu_items = {};
menu_items["hat"] = "hat";
menu_items["mask"] = "mask";
menu_items["coat"] = "coat";
menu_items["shirt"] = "shirt";
menu_items["gloves"] = "gloves";
menu_items["pants"] = "pants";
menu_items["boots"] = "boots";
menu_items["bandana"] = "bandana";
$.each(clothing, function(index, item) {
if (index == menu_items[index] && item > 1) {
$('#' + index).toggleClass("active");
}
});
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
<li class="nav-cat" id="hat" value="1"><img src="/html/img/hat.png"></li>
<li class="nav-cat" id="mask" value="1"><img src="/html/img/mask.png"></li>
<li class="nav-cat" id="coat" value="1"><img src="/html/img/coat.png"></li>
<li class="nav-cat" id="shirt" value="1"><img src="/html/img/shirt.png"></li>
<li class="nav-cat" id="gloves" value="1"><img src="/html/img/gloves.png"></li>
<li class="nav-cat" id="pants" value="1"><img src="/html/img/pants.png"></li>
<li class="nav-cat" id="boots" value="1"><img src="/html/img/boots.png"></li>
<li class="nav-cat" id="bandana" value="1"><img src="/html/img/bandanna.png"></li>
</ul>
解决方案
您可以像这样使用 .map
value
顺便说一句LI没有
const items = $(".nav-cat").map(function() { return {item: this.dataset.item,value:this.dataset.value} }).get()
console.log(items)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
<li class="nav-cat" data-item="hat" data-value="1"><img src="/html/img/hat.png"></li>
<li class="nav-cat" data-item="mask" data-value="1"><img src="/html/img/mask.png"></li>
<li class="nav-cat" data-item="coat" data-value="1"><img src="/html/img/coat.png"></li>
<li class="nav-cat" data-item="shirt" data-value="1"><img src="/html/img/shirt.png"></li>
<li class="nav-cat" data-item="gloves" data-value="1"><img src="/html/img/gloves.png"></li>
<li class="nav-cat" data-item="pants" data-value="1"><img src="/html/img/pants.png"></li>
<li class="nav-cat" data-item="boots" data-value="1"><img src="/html/img/boots.png"></li>
<li class="nav-cat" data-item="bandana" data-value="1"><img src="/html/img/bandanna.png"></li>
</ul>
推荐阅读
- css - 将1000px的图片放在100px的手机网页会不会很浪费,在设备像素比为2的手机中
- objective-c - AVPlayerViewController - 如何始终显示播放控件
- java - 无法解析符号“x”
- ios - 未为 UIColor 定义哈希 UIPlaceholderColor 需要先转换颜色空间
- mongodb - SignalR Core - 错误:Websocket 关闭,状态码:1006
- r - 在R中反复洗牌
- python - 由于线程问题,Ctrl-C 不会杀死我的 python 代码
- python - 为什么 python 中的 .Shape 属性总是在它的索引中具有 [0] 。如果可能,请用外行的方式解释
- python - 将缺少 x 值的图组合起来
- visual-studio-code - Visual Studio 代码编辑器中的编辑器组缺口