开发原则:
避免if嵌套的层次过深,形成“金字塔”代码
局部变量申明尽可能靠近使用的地方
如有可能,尽可能用常量
减少控制流变量
拆分超长表达式
函数应该短小,只做一件事情
把过多的参数封装成类
安装一系列工具
1、安装node环境,检测node安装版本;(安装node是会自动安装npm)
2、安装vue脚手架工具vue-cli
3、引入jquery出错
4、routes非数组报错
5、component组件的name名称不能与文件名一样
6、eslint限制的编码错误,注意分号、空格
7、css引入文件路径错误、依赖缺失
8、项目启动报错,端口占用
9、兼容IE9、10、11遇到的问题
10、浏览器对es6的支持问题
11、深入了解ES6——promise异步编程
我们在写前端代码时,经常会对dom做事件处理操作,比如点击、激活焦点、失去焦点等;再比如我们用ajax请求数据,使用回调函数获取返回值。这些都属于异步编程。
也许你已经大概知道JavaScript引擎单线程的概念,那么这种单线程模式和异步编程有什么关系呢?
JavaScript引擎中,只有一个主线程,当执行JavaScript代码块时,不允许其他代码块执行,而事件机制和回调机制的代码块会被添加到任务队列(或者叫做堆栈)中,当符合某个触发回调或者事件的时候,就会执行该事件或者回调函数。
上面这段话的意思可以这样理解,假设你是一个修仙者,你去闯一个秘境,这个秘境就是主线程,你只能一直深入下去,直到找到宝物和出口,而你还有一个自身的储物空间,这个空间就类似堆栈,你在储物空间放了很多你可能用到的法宝或者丹药,这些东西就是回调函数和事件函数,当你遇到危险或者满足某个条件时,就可以从储物空间拿出你当前需要的东西。
好吧,不扯这么远,下面看正题。
事件模型:浏览器初次渲染DOM的时候,我们会给一些DOM绑定事件函数,只有当触发了这些DOM事件函数,才会执行他们。
const btn = document.querySelector('.button')
btn.onclick = function(event) {
console.log(event)
}
网友评论