<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="https://cdn.staticfile.org/vue/2.6.12/vue.min.js"></script>
</head>
<body>
<div id="app">
<cpn></cpn>
<cpn></cpn>
<cpn></cpn>
</div>
<template id="cpn">
<div>
<h2>计数器:</h2>
<p>{{counter}}</p>
<button @click='btnClick'>+</button>
</div>
</template>
<script>
Vue.component(
'cpn',{
template: '#cpn',
data(){
return {
counter: 0
}
},
methods: {
btnClick(counter) {
this.counter++
}
}
}
)
var vm=new Vue({
el:'#app',
data:{},
methods:{}
});
// ----------------------------
// let person = {
// name: 'why',
// age: 19,
// height: 1.89
// }
// let obj1 = person
// let obj2 = person
// let obj3 = person
// obj1.name = 'kate'
// console.log(obj2);
// console.log(obj3);
// console.log(person);
// 由此证明,在script中同作用域一个对象被引用无论多少次,他们的值更新是同步的。
// -----------------------------------
function abc() {
return {
name: 'why',
age: 19,
height: 1.89
}
}
let obj1 = abc()
let obj2 = abc()
let obj3 = abc()
obj1.name = 'kate'
console.log(obj1);
console.log(abc());
console.log(obj2);
console.log(obj3);
// 由此证明函数return 的对象,在引用时数据是独立的。
</script>
</body>
</html>