文章目錄
- 一,復習
- --1,測驗
- 二,JSON
- --1,測驗
- 三,DOM
- --1,概述
- --2,Document物件
- --3,測驗
- --4,把HTML和JS代碼分離
- HTML中引入js
- 創建js檔案
- 四,Vue
- --1,概述
- --2,入門案例
- --3,MVVM
- --4,改造入門案例
- --5,練習
- 五,Vue的基礎語法
- --1,運算子
- --2,創建函式
- --3,決議復雜的資料
- --4,vue的data的三種寫法
一,復習
–1,測驗
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>復習</title>
<script>
// 創建json物件 的串
let x = '{"name":"tony","age":"20"}' ;
//把一個json串(物件/陣列)變成JS物件
let xobj = JSON.parse(x);
console.log(xobj);//{name: 'tony', age: '20'}
// 1,創建JS物件并呼叫
//方式2:
let u2 = {
name : 'tony' ,
age : 20 ,
study : function(){
return this.name+this.age ;
}
}
console.log(u2.name+u2.age);
let aa = u2.study();
console.log(aa);
//方式1:
function User(){}
let u = new User();
u.name='tony';
u.age=20;
u.study=function(){
return this.name+this.age ;
}
console.log(u.name+u.age);
let a = u.study();
console.log(a);
</script>
</head>
<body>
</body>
</html>
二,JSON
–1,測驗

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>測驗 JSON物件</title>
<script>
//1,JSON物件用來把 json字串 和 js物件互轉
//JSON.parse():json字串 和 js物件,
//好處是方便的決議物件中的屬性值
//JSON.stringify():js物件 和 json字串,
//好處是方便的處理字串,順序可以把資料發給后端
//需求:定義一個json串
let a = '{"name":"tony","age":"20"}';
let b = JSON.parse(a);//json字串 和 js物件
console.log(b.name);//決議name屬性的值
console.log(b.age);//決議age屬性的值
//需求:定義一個js物件
let c = {name:"rose",age:30};
let cstr = JSON.stringify(c);//把js物件轉成json字串
console.log(cstr.length);//求長度
console.log(cstr.concat(100));//拼接
console.log(cstr.substring(1,5));//截取[1,5)
</script>
</head>
<body>
</body>
</html>
三,DOM
–1,概述
是由JS提供的技術, 用來像CSS的選擇器一樣, 使用JS提供的一套API, 就可以選中網頁中的各種元素
會把HTML網頁翻譯成一個Document.
–2,Document物件
window.document---獲取Document物件
getElementById()---通過id屬性的值,獲取元素,只有一個
getElementsByName()---通過name屬性的值,獲取元素,會得到多個,存入陣列
getElementsByClassName()---通過class屬性的值,獲取元素,會得到多個,存入陣列
getElementsByTagName()---通過標簽名,獲取元素,會得到多個,存入陣列
title--獲取標題
innerHtml--獲取內容
innerText--獲取內容
–3,測驗
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>測驗 DOM</title>
</head>
<body>
<div id="d1" onclick="test1()">我是div1</div>
<div class="a">我是div2</div>
<div name="b">我是div3</div>
<p class="a">我是p1</p>
<p class="a">我是p2</p>
<p name="b">我是p3</p>
<span>我是span1</span>
<span>我是span2</span>
<script>
//練習6:點擊我是div1時,列印name="b"的第一個元素的內容
function test1(){
var x = document.getElementsByName("b");
//x是陣列,存了多個資料,可以用下標操作資料
console.log(x[0].innerHTML);
//練習7:點擊我是div1時,修改 我是span2 的內容
var y = document.getElementsByTagName("span");
//y是陣列,存了多個資料,可以用下標操作資料
y[1].innerHTML='我也變了....';
}
//1,利用DOM技術,操作網頁中的元素
//練習5:修改id="d1"的元素的內容
var e = document.getElementById('d1');
e.innerHTML='我變了';
// e.style.color='red';//修改樣式
//了解:innerHTML和innerText的區別?前者能決議HTML標簽后者不決議
//練習4:獲取class="a"的第二個的內容
var d = document.getElementsByClassName("a");
console.log( d[1].innerHTML );
//練習3:獲取id="d1"的元素的內容
var c = document.getElementById("d1");
console.log( c.innerHTML );
//練習1:獲取id="d1"的元素
var a = window.document.getElementById("d1");
console.log(a);
//練習2:獲取class="a"的元素
var b = document.getElementsByClassName("a");
console.log(b);
</script>
</body>
</html>
–4,把HTML和JS代碼分離

HTML中引入js
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>測驗 DOM</title>
</head>
<body>
<div id="d1" onclick="test1()">我是div1</div>
<div class="a">我是div2</div>
<div name="b">我是div3</div>
<p class="a">我是p1</p>
<p class="a">我是p2</p>
<p name="b">我是p3</p>
<span>我是span1</span>
<span>我是span2</span>
<!-- 引入js檔案 -->
<script src="1.js"></script>
</body>
</html>
創建js檔案
//練習6:點擊我是div1時,列印name="b"的第一個元素的內容
function test1(){
var x = document.getElementsByName("b");
//x是陣列,存了多個資料,可以用下標操作資料
console.log(x[0].innerHTML);
//練習7:點擊我是div1時,修改 我是span2 的內容
var y = document.getElementsByTagName("span");
//y是陣列,存了多個資料,可以用下標操作資料
y[1].innerHTML='我也變了....';
}
//1,利用DOM技術,操作網頁中的元素
//練習5:修改id="d1"的元素的內容
var e = document.getElementById('d1');
e.innerHTML='我變了';
// e.style.color='red';//了解修改樣式
//了解:innerHTML和innerText的區別?前者能決議HTML標簽后者不決議
//練習4:獲取class="a"的第二個的內容
var d = document.getElementsByClassName("a");
console.log( d[1].innerHTML );
//練習3:獲取id="d1"的元素的內容
var c = document.getElementById("d1");
console.log( c.innerHTML );
//練習1:獲取id="d1"的元素
var a = window.document.getElementById("d1");
console.log(a);
//練習2:獲取class="a"的元素
var b = document.getElementsByClassName("a");
console.log(b);
四,Vue
–1,概述
是一個輕量級的 MVVM的框架.可以使用資料驅動/雙向系結,組件化,路由…
特點:
1, 綜合了HTML CSS JS 技術
2, 漸進式的框架: 按需配置, vue.js + ???
3, 優化了DOM操作網頁元素的方式, 使用了CSS的選擇器
使用步驟:
1, 在網頁中引入 vue.js 檔案
–2,入門案例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>測驗 Vue的入門案例</title>
<!-- 1.引入vue.js -->
<script src="vue.js"></script>
</head>
<body>
<!-- 2.資料渲染區:獲取vue的資料 -->
<div id="app">
{{msg}}
</div>
<!-- 3.準備資料,將被資料渲染區來獲取 -->
<script>
//準備資料
var a = {
msg : 'hello vue~'
}
//創建物件
new Vue({
//掛載點:即將在這個位置展示vue資料
el : "#app" , //element元素,使用了CSS里的id選擇器
//資料:給掛載點準備資料
data : a
})
</script>
</body>
</html>
–3,MVVM
是Vue框架的一種設計思想,實作代碼間的松耦合.

–4,改造入門案例
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>測驗 Vue的入門案例</title>
<!-- 1.引入vue.js -->
<script src="vue.js"></script>
</head>
<body>
<!-- 2.資料渲染區:插值運算式{{屬性名}},獲取vue的資料 -->
<div id="app">
{{msg}}
<h1> {{name}} </h1>
</div>
<h1> {{name}} </h1>
<!-- 3.準備資料,將被資料渲染區來獲取 -->
<script>
//創建物件
let vm = new Vue({
//掛載點:即將在這個位置展示vue資料
el : "#app" , //element元素,使用了CSS里的id選擇器
//資料:給掛載點準備資料
data :{//準備資料
msg : 'hello vue~',
name: 'tony'
}
})
</script>
</body>
</html>
–5,練習
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>vue的練習</title>
<script src="vue.js"></script>
</head>
<body>
<div id="a">
姓名: {{name}}
年齡: {{age}}
</div>
<script>
new Vue({
el:"#a",
data:{
name:'tony',
age:20
}
})
</script>
</body>
</html>
五,Vue的基礎語法
–1,運算子
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="vue.js"></script>
</head>
<body>
<div id="a">
算術運算子: {{3+2}} {{3-2}} {{3*2}} {{3/2}} {{3%2}}
三元運算子: {{age > 18 ? '成年人' : '未成年'}}
<div>字串的內容是: {{str}}</div>
<div>字串的長度是: {{str.length}}</div>
<div>字串拼接后: {{str.concat(100)}}</div>
<div>字串截取后: {{str.substring(1,3)}}</div>
</div>
<script>
new Vue({
el:"#a",
data:{
age:10,
str:'hello'
}
})
</script>
</body>
</html>
–2,創建函式
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="vue.js"></script>
</head>
<body>
<div id="a">
算術運算子: {{3+2}} {{3-2}} {{3*2}} {{3/2}} {{3%2}}
三元運算子: {{age > 18 ? '成年人' : '未成年'}}
<div>字串的內容是: {{str}}</div>
<div>字串的長度是: {{str.length}}</div>
<div>字串拼接后: {{str.concat(100)}}</div>
<div>字串截取后: {{str.substring(1,3)}}</div>
<div>呼叫函式:{{show()}}</div>
<div>函式傳參:{{add(1,2)}}</div>
<div>函式的回傳值:{{sum(1,2)}}</div>
</div>
<script>
new Vue({
el:"#a",
data:{
age:10,
str:'hello'
}
,
methods:{//vue里創建函式,必須放在methods里
//函式名:函式的宣告
show(){
alert(1)
},
add(x,y){
alert(x+y)
},
//sum:function(x,y){
sum(x,y){ //效果同上,簡寫形式
return x+y;
}
}
})
</script>
</body>
</html>
–3,決議復雜的資料
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>測驗vue決議復雜的資料</title>
<script src="vue.js"></script>
</head>
<body>
<div id="app">
<h1>vue決議簡單的資料: {{name}} {{age}}</h1>
<h1>vue決議物件的資料: {{person.name}} {{person.age}}
{{person.coding()}} {{person.tostring()}}
</h1>
<h1>vue決議陣列的資料:{{hobby}} {{hobby[0]}} {{hobby[1]}} </h1>
<h1>vue決議陣列的資料:{{list}} {{list[0]}} {{list[1]}}
{{list[0].name}} {{list[1].name}}
</h1>
</div>
<script>
new Vue({
el:"#app",
data:{
name : "jack",
age : 20,
//物件名:宣告
person : {
name : "rose",
age : 18,
coding:function(){
alert(100)
},
tostring:function(){
return this.name+this.age ;
}
},
hobby:["足球","籃球"],
list:[
{name:"jack",age:20},
{name:"rose",age:10}
]
}
})
</script>
</body>
</html>
–4,vue的data的三種寫法
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>vue里data的三種寫法</title>
<script src="vue.js"></script>
</head>
<body>
<div id="app">
<h1>決議物件的資料: {{person.name}} {{person.age}}</h1>
<h1>決議陣列的資料: {{hobby[0]}} {{hobby[1]}}</h1>
</div>
<script>
new Vue({
el:"#app",
//data的資料用函式方式回傳:將來方便組件化的思想
//data:function(){
data(){//效果同上,簡寫形式
return {
person:{
name:'tony',
age:20
},
hobby:["唱","跳rap"]
}
}
})
</script>
</body>
</html>
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/377157.html
標籤:其他
