【发布时间】:2018-09-30 07:02:51
【问题描述】:
我不想使用 push()/slice()/unshift() .etc 移动元素位置,因为即使我使用其中一种方法更改了元素位置',索引仍然从'开始0',而不是'1'。
我的目标是“操作元素 index”,所以当我回调它们时,它会从 1, 2, 3, 4 开始。 . .
这段代码基本上可以正常工作。我想操作数组元素索引:|
$(function submenuTrigger(){
var list = [
["", 'Urus', 'Aventador', 'Experiences', 'Few Off', 'Concept', 'Ad Personam', " "], // 0, 1, 2, 3, 4, 5 6 . .
["", 'People', 'History', 'Masterpieces', 'Design', 'Innovation & Exellences', " ", " ", " "],
["", "Locators", "Accessori Origianli", "Spare Parts", "Services", "Polo Storico", "Financial Services", " ", " "],
["", "News", "Events", "Museum", "Accademia", "Esperienza", "Lamborghini Lounge", "Mobile App", " "],
["", "News", "Events", "Museum", "Accademia", "Esperienza", "Lamborghini Lounge", "Mobile App", " "]
]
var int_compare = 0;
$('#home-menu-nav ul li').mouseenter(function(){
var li_int = $(this).index() + 1; // make sure li indexes start 1, 2, 3, 4 . .
list_int = list[li_int]; // make sure list's first elements start counting 1, 2, 3, 4 . .
list_len = list_int.length; // makes automatically count inside of for statement / loop_int = [list]
int_compare = li_int;
console.log(list_int)
if(li_int == int_compare){
for(p = 0; p < list_len; p++){
console.log(list_len)
$('#submenu-content-row-left ul li:nth-child('+ p +')').html(list[li_int - 1][p]);
nbsp = list[li_int - 1][p]
}
} else {
console.log('none');
return
}
})
})
<div id="home-menu-nav">
<ul>
<li>MODELS</li>
<li>BRAND</li>
<li>OWNDERSHIP</li>
<li>EXPERIENCE</li>
<li>MOTORSPORT</li>
<li>STORE</li>
</ul>
</div>
<div id="submenu-content-row-left">
<ul>
<li> </li>
<li> </li>
<li> </li>
<li> </li>
<li> </li>
<li> </li>
<li> </li>
</ul>
</div>
如果可以的话,我想更改元素的索引
【问题讨论】:
-
为什么要对抗语言最基本的方面之一?
-
您需要在向用户展示时添加 +1,在接受输入时添加 -1。我们在这个问题上花费的时间比你输入 +1 和 -1 的时间还要多,如果你这样做一百次。有时,编程中的一个坏习惯是花费大量精力来节省少量精力。这些是使代码不可读且难以修复的优化类型。写出来并遵循标准可以很容易地了解您的代码中发生了什么。
-
如果围绕数组从零开始的事实构建,则无需添加 +1 或 -1。数以百万计的 JavaScript(以及 c 和 python 以及 java 和 c++ 等)程序员管理。在许多情况下,它实际上要方便得多。这是来自Edsger Dijkstra 的good, short article 说明原因。
-
@joshstrike MarkMeyer 谢谢大家回答我。
标签: javascript html arrays indexing