js 数组 IndexBar 索引栏字母顺序问题

data = {

D: [{...}],

L: [{...}],

Q: [{...}],

S: [{...}],

W: [{...}],

X: [{...}],

Z: [{...}]

}

       <van-index-bar class="anchorBar">

<template v-for="(item, index) in data">

<van-index-anchor :index="index" :key="index" />

<van-cell

center

v-for="(item2, index2) in item"

:key="index2"

:title="item2.realName"

:label="item2.userPost">

</van-cell>

</template>

</van-index-bar>

js 数组 IndexBar 索引栏字母顺序问题

请问一下后端按字母顺序给我返回的数据,循环遍历字母顺序错乱的。我哪里写错了吗?


回答:

你的data是一个object对象,而object对象是无序的,你在浏览器看到的排序是浏览器按照自己的规则(一般是本地语言)进行的排序,这种情况需要对object进行处理,比如转成array后排序


回答:

const arr = [];

for (const key in data) {

arr[key.charCodeAt()] = data[key];

}

可以先根据ASCII作为索引转成数组,使用时就反向变为字母。这样也省的排序了

以上是 js 数组 IndexBar 索引栏字母顺序问题 的全部内容, 来源链接: utcz.com/p/935836.html

回到顶部