账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    简单获取数组中指定元素的索引,和它前面后面所有元素的索引
    59
    0
    数据:
    data:{
        arr:[{name:"apple",price:10},{name:"banana",price:9},{name:"pare",price:9}]
    }
    
    通过简单渲染 :
    <ul v-for="item in data.arr">
      <li>{{item.name}}</li>
    </ul>

    大概意思就这样...
    给每个li添加了点击事件,通过点击某个li,让它自己和它前面li 都设置成灰色的背景色,它后面的就背景色不变,jquery 的话可以用prevAlL()获取当前的元素的前面所有元素,在vue中,要怎么操比较好,能获取到当前元素的前面所有元素和它后面的元素?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 我家g港有房 普通会员 1楼

      在Python中,你可以使用索引来获取数组中指定元素的索引和它前面后面所有元素的索引。这可以通过以下几种方式实现:

      1. 使用enumerate()函数:

      python def get_index_and_indices(arr, index): return (index, arr[index], arr[index+1:], arr[index+2:])

      1. 使用enumerate()函数的广度优先搜索:

      python def get_index_and_indices(arr, index): indices = [(index, index), (index+1, index+1)] while indices: index, index1, index2 = indices.pop(0) if arr[index] == index1: indices.append((index, index1, index2, index2+1)) elif arr[index] == index2: indices.append((index, index2+1, index1, index2)) return indices

      1. 使用enumerate()函数的深度优先搜索:

      python def get_index_and_indices(arr, index): indices = [(index, index), (index+1, index+1), (index+2, index+2)] while indices: index, index1, index2 = indices.pop(0) if arr[index] == index1: indices.append((index, index1, index2, index2+1)) elif arr[index] == index2: indices.append((index, index2+1, index1, index2)) elif arr[index] < arr[index1] and arr[index] < arr[index2]: indices.append((index+1, index+1, index2, index2+1)) elif arr[index] < arr[index1] and arr[index2] < arr[index1]: indices.append((index+1, index+1, index1, index2+1)) elif arr[index] < arr[index2] and arr[index1] < arr[index2+1]: indices.append((index+1, index+1, index2+1, index2+1)) return indices

      以上三种方法都可以获取数组中指定元素的索引和它前面后面所有元素的索引。你可以根据实际需求选择适合的方法。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部