<html>
<head>
<meta charset="utf-8">
<title>Vue 测试实例 - 菜鸟教程(runoob.com)</title>
<script src="https://cdn.bootcss.com/vue/2.2.2/vue.min.js"></script>
</head>
<body>
<p id="app">
<p @click="add">{{a}}</p>
</p>
<script>
new Vue({
el: '#app',
data: {
a:[]
},
methods:{
add:function(){
console.log(this.a);
this.a.push(1);
console.log(this.a);
}
}
})
</script>
</body>
</html>"
![图片描述][1]
這是debug控制的特性,console.log輸出的不是object的一個snapshot。你可以在控制台試試
我的理解,因為這個a是數組;跟物件一樣,都是存取記憶體位址查看。
因為工作中,經常用chrome
console.log
一個對象,在調試器點開,裡面內容基本上一樣,但表面可以看出前後結果是不一樣的;但是,打斷點,debug就會發現改變之前,和之後是不一樣的。
上圖
並沒有一樣啊,我就是把你的程式碼直接複製,運行了都沒有一樣啊~
添加後的a明明多1了呢
這裡給出一個輕鬆愉快的解決方案:
console.log(JSON.stringify(data, null, 2))
即可。