modify
This commit is contained in:
		
							parent
							
								
									575b853d31
								
							
						
					
					
						commit
						aae88046b6
					
				@ -14,19 +14,15 @@
 | 
				
			|||||||
当函数调用call()和apply()时,函数都会立即**执行**。
 | 
					当函数调用call()和apply()时,函数都会立即**执行**。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- 都是用来改变函数的this对象的指向的。
 | 
					- 都可以用来改变函数的this对象的指向。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- 第一个参数都是this要指向的对象(函数执行时,this将指向这个对象)。
 | 
					- 第一个参数都是this要指向的对象(函数执行时,this将指向这个对象),后续参数传实参。
 | 
				
			||||||
 | 
					 | 
				
			||||||
- 都可以利用后续参数传实参。
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**call()和apply()的区别:**
 | 
					**call()和apply()的区别:**
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- call()方法可以将实参在对象之后依次传递。
 | 
					call()和apply()方法都可以将实参在对象之后依次传递,但是apply()方法需要将实参封装到一个**数组**中统一传递。
 | 
				
			||||||
 | 
					 | 
				
			||||||
- apply()方法需要将实参封装到一个**数组**中统一传递。
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
比如针对下面这样的代码:
 | 
					比如针对下面这样的代码:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -34,7 +34,7 @@
 | 
				
			|||||||
<script>
 | 
					<script>
 | 
				
			||||||
    window.onload = function () {
 | 
					    window.onload = function () {
 | 
				
			||||||
        var myDiv = document.getElementsByTagName('div');
 | 
					        var myDiv = document.getElementsByTagName('div');
 | 
				
			||||||
        for (i = 0; i < myDiv.length; i++) {
 | 
					        for (var i = 0; i < myDiv.length; i++) {
 | 
				
			||||||
            myDiv[i].onclick = function () {
 | 
					            myDiv[i].onclick = function () {
 | 
				
			||||||
                console.log(i);
 | 
					                console.log(i);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
@ -58,11 +58,11 @@
 | 
				
			|||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
上方代码的正确打印结果是5。你可能会觉得很惊讶。我们来解释一下:
 | 
					点击其中的任何一个元素后,上方代码的正确打印结果是5。你可能会觉得很惊讶。我们来解释一下:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
当代码执行完毕后,i已经等于5了。因为一旦运行程序,for循环已经执行完了,此时i等于5。
 | 
					当代码执行完毕后,i已经等于5了。因为一旦运行程序,for循环已经执行完了,此时i等于5。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
如果我们尝试在 myDiv[i].onclick事件中写代码的时候,如果打印:
 | 
					现在,我们尝试在 myDiv[i].onclick事件中写代码,如果打印:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
	console.log(i);  //打印结果为5
 | 
						console.log(i);  //打印结果为5
 | 
				
			||||||
@ -83,12 +83,14 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
你看,this的作用,就体现出来了。
 | 
					你看,this的作用,就体现出来了。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					PS:顺便提醒一下,上面的代码中,如果把`var i`改成`let i`,效果又完全不同了。参考链接:[let和var在for循环中的表现](http://blog.csdn.net/stopllL/article/details/64130664)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### 全局作用域中的this
 | 
					### 全局作用域中的this
 | 
				
			||||||
 | 
					
 | 
				
			||||||
当一段代码在浏览器中执行时,所有的全局变量和对象都是在window对象上定义的。换而言之,所有的全局变量和对象都属于window对象。
 | 
					当一段代码在浏览器中执行时,所有的全局变量和对象都是在window对象上定义的。换而言之,所有的全局变量和对象都属于window对象。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### this的定律
 | 
					## this的定律
 | 
				
			||||||
 | 
					
 | 
				
			||||||
this关键字永远指向函数(方法)运行时的**所有者**。
 | 
					this关键字永远指向函数(方法)运行时的**所有者**。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -114,7 +116,7 @@ this都是指向window。
 | 
				
			|||||||
### 以方法的形式调用时,this是调用方法的对象
 | 
					### 以方法的形式调用时,this是调用方法的对象
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### 解决闭包中的this指向问题
 | 
					## 解决闭包中的this指向问题
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
内部函数是可以访问到外部函数的变量的。
 | 
					内部函数是可以访问到外部函数的变量的。
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										74
									
								
								19-基础/01-常见.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								19-基础/01-常见.md
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,74 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## HTML
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 你是如何理解 HTML 语义化的?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**语义化**:指对文本内容的结构化(内容语义化),选择合乎语义的标签(代码语义化)。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**举例**:段落用 p,边栏用 aside,主要内容用 main 标签。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**好处:**
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- 便于开发者阅读和维护
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- 有利于SEO:让浏览器的爬虫和辅助技术更好的解析,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**语义化标签介绍**:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					在HTML5出来之前,我们习惯于用div来表示页面的章节或者不同模块,但是`div`本身是没有语义的。但是现在,HTML5中加入了一些语义化标签,来更清晰的表达文档结构。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					20180322_1120.jpg
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					参考链接:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- [初探 · HTML5语义化](https://zhuanlan.zhihu.com/p/32570423)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### meta viewport 是做什么用的,怎么写?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```html
 | 
				
			||||||
 | 
					 	<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					控制页面在移动端不要缩小显示。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### canvas 元素是干什么的?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					看 MDN 的 [canvas 入门手册](https://developer.mozilla.org/zh-CN/docs/Web/API/Canvas_API)。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## CSS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 说一下盒模型
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					可以参考本人的另外一篇文章:[]()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## 参考链接
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- [互联网公司招聘启事的正确阅读方式](https://zhuanlan.zhihu.com/p/33998813)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										5
									
								
								19-基础/02-this相关.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								19-基础/02-this相关.md
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,5 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## this 在各个场景下的指向
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										22
									
								
								19-基础/异步.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								19-基础/异步.md
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,22 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## 面试题
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 20180321面试题
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```javascript
 | 
				
			||||||
 | 
					    console.log(1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    setTimeout(function () {
 | 
				
			||||||
 | 
					        console.log(2);
 | 
				
			||||||
 | 
					    }, 1000);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    setTimeout(function () {
 | 
				
			||||||
 | 
					        console.log(3);
 | 
				
			||||||
 | 
					    }, 0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    console.log(4);
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1,18 +0,0 @@
 | 
				
			|||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
### 2018-01-29
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
长期写博客的人,最少能证明他是一个善于思考和总结的人。
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
这句话的来源:[我依然坚持建议你开始写博客 | 写给我的 2017](https://www.cnblogs.com/plokmju/p/8108846.html)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
### 2018-03-21
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
- [不谈面试题,谈谈招聘时我喜欢见到的特质](https://www.cnblogs.com/dino623/p/8583514.html)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@ -40,7 +40,7 @@
 | 
				
			|||||||
如果我们在控制台输入`myVue.data+='123'`,页面会**自动更新**name的值。
 | 
					如果我们在控制台输入`myVue.data+='123'`,页面会**自动更新**name的值。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
下面来讲一下Vue的系统指令
 | 
					下面来讲一下Vue的各种系统指令。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## v-on:注册事件
 | 
					## v-on:注册事件
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -320,12 +320,12 @@ v-text可以将一个变量的值渲染到指定的元素中。例如:
 | 
				
			|||||||
<script>
 | 
					<script>
 | 
				
			||||||
    var vm = new Vue({
 | 
					    var vm = new Vue({
 | 
				
			||||||
        el: '#app',
 | 
					        el: '#app',
 | 
				
			||||||
        //采用v-model进行双向数据绑定,数据会自动更新到data里面来
 | 
					        //上面的标签中采用v-model进行双向数据绑定,数据会自动更新到data里面来
 | 
				
			||||||
        data: {
 | 
					        data: {
 | 
				
			||||||
            name: 'smyhvae',
 | 
					            name: 'smyhvae',
 | 
				
			||||||
            myAccount: {username: '', userpwd: ''}
 | 
					            myAccount: {username: '', userpwd: ''}
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        //绑定方法,根据业务需要进行操作
 | 
					        //在methods里绑定各种方法,根据业务需要进行操作
 | 
				
			||||||
        methods: {
 | 
					        methods: {
 | 
				
			||||||
            submit1: function () {
 | 
					            submit1: function () {
 | 
				
			||||||
                alert(this.myAccount.username + "  pwd=" + this.myAccount.userpwd);
 | 
					                alert(this.myAccount.username + "  pwd=" + this.myAccount.userpwd);
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user