美文网首页
Vue 数组操作

Vue 数组操作

作者: lyp82nkl | 来源:发表于2019-07-09 21:48 被阅读0次

    push / pop / unshift / shift 方法

    • push() 在末尾添加元素
    • pop() 将数组的最后一个元素移除
    • shift() 删除数组的第一个元素
    • unshift():在数组的第一个元素位置添加一个元素
      请看图:


    sort / reverse 方法

    <div id="app">
        <ul>
          <li v-for="person in personArr">
            {{ person }}
          </li>
        </ul>
        <button @click="sortArr">sort</button>      
        <button @click="reverseArr">reverse</button> 
    </div>
    
    var app = new Vue({
      el: '#app',
      data: {
        personArr: ['张三', '李四', '王二麻子']
      },
      methods: {  
        sortArr() {                      
          this.personArr.sort(function (a, b) {
            return b.length - a.length    // 为了效果,写的 b.length - a.length,你也可以调换顺序试试
          })
        },
        reverseArr() {
          this.personArr.reverse()
        }
      }
    })
    

    看图:


    filter:过滤数组中的元素

    <div id="app">
        {{ match }}   
    </div>
    
    var app = new Vue({
      el: '#app',
      data: {
        studyArr: ['book', 'pen', 'pencil']  
      },
      computed: {
        match() {  
          return this.studyArr.filter(function (value) {   
            return value.match(/oo/)
    //选择带有 oo 的单词
          }) 
        }
      }
    })
    

    数组中的元素,只有 "book" 才含有 "oo" ,所以返回 "book"。

    数组的两个变动 Vue 检测不到:

    • 改变数组的指定项
    • 改变数组的长度
    <div id="app">
        <ul>
          <li v-for="person in personArr">
            {{ person }}
          </li>
        </ul>
        <button @click="changeItem">changeItem</button>      
        <button @click="changeLength">changeLength</button> 
    </div> 
    
    var app = new Vue({
      el: '#app',
      data: {
        personArr: ['张三', '李四', '王二麻子']
      },
      methods: {    
        changeItem() {
          this.personArr[1] = 'dongdong'    
    // 将数组索引为 1 的元素改成 'dongdong'
        },
        changeLength() {
          this.personArr.length = 100    
    // 将数组长度改成 100
        }
      }
    })
    
    改变数组的指定项

    Vue.set(数组, 索引, 新元素) // 注意 Vue 的首字母大写

    改变数组的长度
    • 改变数组长度,可以使用多种方法



      数组长度原本是 3,使用了 splice 方法,删除了索引为 1 及以后的元素,并返回被删除的元素。此时,数组长度变成了 1。



      使用了 push 方法, 向数组中添加了一个新元素。此时数组长度由原来的 3 变成了 4
      也可以使用其他方法改变数组长度,如:pop、unshift、shift 等。

    相关文章

      网友评论

          本文标题:Vue 数组操作

          本文链接:https://www.haomeiwen.com/subject/kvnfkctx.html