vue 循环遍历对象、数组和字符串

1.循环遍历对象

1.1vue 在html里面循环遍历对象

v-for=" (val, key , i) in dimItemMap" :key="key"
val-每一项
key -key值
i-第几个

<el-table-column prop="score" label="评分" :show-overflow-tooltip="true" align="center">
            <template slot-scope="scope">
              <span>
                <span v-for=" (val, key , i) in scope.row.dimItemMap" :key="key">
                {{key}}//键
                  {{val.score}}//val.score为值
                </span>
           </span>
       </template>
</el-table-column>

1.2 在js里面forin遍历对象

for…in 循环主要是为了遍历对象而生,不适用于遍历数组

let data = [{ wiun2dvi: 232, wiun3dvi: 55, wiu4ndvi: 33, wiun1dvi: 24432 }];
    data.forEach((item,index)=>{
      for (const key in item) {
        console.log("item[key]",item[key]);//值
        console.log("key",key);//键
      }
    })

2.循环遍历数组

2.1 vue 在html里面循环遍历数组

<el-table-column v-for="item in tableCol" :key="item.id" :prop="item.id" :label="item.name" :show-overflow-tooltip="true" align="center">
      <template slot-scope="scope">
           <span>{{scope.row.dimItemMap?scope.row.dimItemMap[item.id].name:""}}</span>
      </template>
</el-table-column>
<el-table-column prop="score" label="评分" :show-overflow-tooltip="true" align="center">
            <template slot-scope="scope">
              <span>
                <span v-for=" (item, index) in scope.row.dimItemMap" :key="index">
                  {{item.score}}
                </span>
           </span>
       </template>
</el-table-column>

2.2 在js里面for遍历数组

let id = 1524466
for (let i = 0; i < list.length; i++) {
        let a = list[i];
        if (a.id === id) {
          return a.name;
        } 
}

2.3 在js里面forof遍历数组

           let arr = [{
                name: 12,
                hello: "wsdfnioq",
            }, {
                name: 12,
                hello: "wsdfnioq",
            }, {
                name: 12,
                hello: "wsdfnioq",
            }]
            for (const i of arr) {
                console.log("i", i);
            }
//i {name: 12, hello: 'wsdfnioq'}
// i {name: 12, hello: 'wsdfnioq'}
 //i {name: 12, hello: 'wsdfnioq'}
let arr = [
    ['name', "张三"],
    ['地址', '北京'],
    ['手机', '123']
]
for (const [value0, value1] of arr) {
    console.log('k', value0, value1);
}
// k name 张三
// k 地址 北京
// k 手机 123

2.4 forin,不推荐对数组进行遍历

let arr = ["lsadnkol", "klsmvaod", "lpsaojfoas"]
for (const key in arr) {
    console.log("arr", key, typeof key, arr[key]);
}
// 0 string lsadnkol
// 1 string klsmvaod
// 2 string lpsaojfoas

2.4 forEach() 函数遍历数组

①无任何返回,可改变原来数组中的内容
②循环次数:数组的长度
③不支持return,不需要return语句

如下案例:给每个对象中添加age属性

    let forArr = [{name:'tom',sex:'man'},{name:'linda',sex:'woman'},]
     forArr.forEach((item,index) => {
        console.log("forEach循环==index==",index,item);
         item.age = 27
    })

    console.log("forArr==遍历后===",forArr)
   // forArr ---->[{name:'tom',sex:'man',age:27},{name:'linda',sex:'woman',age:27}]

3.循环遍历字符串

3.1for

let s = "abcd"
for (let i = 0; i < s.length; i++) {
      console.log(i, typeof i, s[i]); //i为索引,s[i]为值,typeof i 为number
}
//  0 number a
//  1 number b
//  2 number c
//  3 number d

3.2 forin

let s = "abcd"
for (const key in s) {
    console.log("key", key, typeof key, s[key]); //key为索引,s[key]为值,typeof key 为string
}
// 0 string a
// 1 string b
// 2 string c
// 3 string d

3.3 forof

let s = "abcd"
for (const i of s) {
    console.log("i", i);//i为值
}
// a 
// b 
// c 
// d
  • 19
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue中,你可以使用v-for指令来循环遍历对象。在HTML中,你可以使用v-for指令来循环遍历对象,具体的语法是:v-for="(value, key, index) in object",其中value是对象属性的值,key是对象属性的键,index是索引值。在JavaScript中,你可以使用for-in循环遍历对象,具体的语法是:for (const key in object) {}。 例如,给每个对象中添加age属性,你可以使用forEach()函数遍历数组并执行相应的操作。具体的代码如下所示: ``` let forArr = [{name:'tom',sex:'man'},{name:'linda',sex:'woman'},] forArr.forEach((item,index) => { console.log("forEach循环==index==",index,item); item.age = 27 }) console.log("forArr==遍历后===",forArr) // forArr ---->[{name:'tom',sex:'man',age:27},{name:'linda',sex:'woman',age:27}] ``` 对于循环遍历字符串,你可以使用for循环,for-in循环,或者for-of循环。具体的代码如下所示: ``` let s = "abcd" // 使用for循环 for (let i = 0; i < s.length; i++) { console.log(i, typeof i, s[i]); //i为索引,s[i为值,typeof i 为number } // 输出结果:0 number a // 1 number b // 2 number c // 3 number d // 使用for-in循环 for (const key in s) { console.log("key", key, typeof key, s[key]); //key为索引,s[key为值,typeof key 为string } // 输出结果:0 string a // 1 string b // 2 string c // 3 string d // 使用for-of循环 for (const i of s) { console.log("i", i);//i为值 } // 输出结果:a // b // c // d ``` 总结起来,在Vue中,你可以使用v-for指令来循环遍历对象。在JavaScript中,你可以使用for-in循环遍历对象,或者使用for循环、for-in循环、for-of循环遍历字符串。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [vue 循环遍历对象数组字符串](https://blog.csdn.net/ingenuou_/article/details/122500455)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [vue 解决遍历对象显示的顺序不对问题](https://download.csdn.net/download/weixin_38639872/12932467)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值