01- ES6、jquery源码、node、webpack
1、课程介绍

小马哥blog:https://www.cnblogs.com/majj/
前端学习路径:https://www.processon.com/view/link/5d3a5947e4b0511f13134ced#map

2、ES6简单语法
阮一峰 es6 http://es6.ruanyifeng.com

1、let和const
<script type='text/javascript'>
// 坑1 块级作用域,不能重复声明
//es5: js的坑 var声明的变量会暴露在全局global
{
var a = ;
}
console.log(a)
//es6: let声明的变量 是块级作用域,不能重复声明
{
let a = ;
let a = ;
let a = ;
}
console.log(a);
//坑2
// var 全局变量声明
var a = [];
for (var i=; i<; i++){
a[i] = function(){
console.log(i);
};
}
a[]() //6
// let 声明 块级
var a = [];
for (let i=; i<; i++){
a[i] = function(){
console.log(i);
};
}
a[]() //10
//坑3 变量提升
// var
console.log(foo)
var foo = ; // 输出undefined
//let
console.log(bar);
let bar = ; // 报错ReferenceError
//const命令
// const声明常量,一旦声明,立即初始化,不能重复声明
const PI = 3.1415;
PI // 3.1415
PI = ;
// TypeError: Assignment to constant variable.
</script>
2、模板字符串
<script>
// 传统javascript
var a = ;
var b = ;
var str = "哈哈哈" + a + "嘿嘿嘿" + b;
console.log(str);
//es6
var str = `哈哈哈${a}嘿嘿嘿${b}`;
console.log(str);
let greeting = `\`Yo\` World!`; // 转义
console.log(greeting)
</script>
3、箭头函数
// 省略function
// function(){} === ()=>{}
// 箭头函数
// 传统
var f = function(a){
return a;
}
f();
// 单个形参
var f = (a) => {
return a;
}
// 多个形参
var f = (num1,num2) =>{
return num1+num2;
}
// 字面量方式创建对象
var person1 = {
name:'alex',
age:,
fav:function(){
console.log('喜欢av1')
}
}
person1.fav();
var person2 = {
name:'alex',
age:,
fav:() => {
console.log('喜欢av1')
}
}
person2.fav()
坑
<script>
// 箭头函数
// 坑1 this
var person1 = {
name:'alex',
age:,
fav:function(){
// 指向使用时定义的对象
console.log(this);
console.log(this.name);
}
}
person1.fav();
var person2 = {
name:'alex',
age:,
fav:() => {
// 如果使用箭头函数
// this指向的是定义时,所使用的的对象,
// 指向我们的windows
console.log(this); // Window {postMessage: ƒ, blur: ƒ, foes: Window, …}
console.log(this.name);
}
}
person2.fav()
//坑2 arguments不能使用
var person1 = {
name:'alex',
age:,
fav:function(){
console.log(arguments);
}
}
person1.fav(,,);
var person2 = {
name:'alex',
age:,
fav:() => {
console.log(arguments);
}
}
person2.fav(,,)
</script>

4、对象的单体模式
<script>
// function(){} == (){}
// 1.this的指向发生改变,指向了定义对象时的对象
// 2.arguments不能使用 // 解决办法 --- 对象的单体模式
var person2 = {
name: 'alex',
age: ,
fav() {
console.log(arguments);
}
} person2.fav(,,) </script>

5、面向对象
<script>
// es5
// 构造函数的方式创建对象
function Animal(name,age){
this.name = name;
this.age = age;
}
// 添加showname方法,animal原型
Animal.prototype.showName1 = function(){
console.log(this.name)
}
Animal.prototype.showName2 = function(){
console.log(this.name)
}
Animal.prototype.showName3 = function(){
console.log(this.name)
}
var dog = new Animal('alex',)
dog.showName1()
//es6 面向对象
class Person{
constructor(name,age){
this.name = name
this.age = age
} // 一定不要加逗号
showName(){
console.log(this.name)
}
}
var p = new Person('jack',)
p.showName()
</script>
6、总结






3、jquery源码剖析



模块函数


es6 严格标记


调用jQuery,创建对象

属性与方法

方法挂载到jQuery




扩展方法




模块化依赖加载,异步模式加载

挂载在window ,jQuery
$.ajax()


4、node
node的介绍 https://www.cnblogs.com/majj/p/9042541.html
简单安装步骤 https://www.cnblogs.com/majj/p/9957597.html#b

1、node的安装


2、npm 安装模块

# 生成package.json
npm install bootstrap --save
npm install swiper --save # 根据package.json反向生成模块
npm install




3、如何跑起来GitHub前端项目


5、webback

1、 为什么要使用 webpack?

2、什么是webpack



3、模块化


01- ES6、jquery源码、node、webpack的更多相关文章
- jQuery源码分析-01总体架构
1. 总体架构 1.1自调用匿名函数 self-invoking anonymous function 打开jQuery源码,首先你会看到这样的代码结构: (function( window, und ...
- jQuery源码逐行分析学习01(jQuery的框架结构简化)
最近在学习jQuery源码,在此,特别做一个分享,把所涉及的内容都记录下来,其中有不妥之处还望大家指出,我会及时改正.望各位大神不吝赐教!同时,这也是我的第一篇前端技术博客,对博客编写还不是很熟悉,美 ...
- jquery源码分析之一前言篇
1.问:jquery源码分析的版本是什么? 答:v3.2.1 2.问:为什么要分析jquery源码? 答:javascript是一切js框架的基础,jquery.es6.vue.angular.rea ...
- jQuery源码分析系列
声明:本文为原创文章,如需转载,请注明来源并保留原文链接Aaron,谢谢! 版本截止到2013.8.24 jQuery官方发布最新的的2.0.3为准 附上每一章的源码注释分析 :https://git ...
- 【菜鸟学习jquery源码】数据缓存与data()
前言 最近比较烦,深圳的工作还没着落,论文不想弄,烦.....今天看了下jquery的数据缓存的代码,参考着Aaron的源码分析,自己有点理解了,和大家分享下.以后也打算把自己的jquery的学习心得 ...
- JQuery源码解析(一)
写在前面:本<JQuery源码解析>系列是基于一些前辈们的文章进行进一步的分析.细化.修改而写出来的,在这边感谢那些慷慨提供科普文档的技术大拿们. 要查阅JQ的源文件请下载开发版的JQ.j ...
- 读jQuery源码 - Callbacks
代码的本质突出顺序.有序这一概念,尤其在javascript——毕竟javascript是单线程引擎. javascript拥有函数式编程的特性,而又因为javascript单线程引擎,我们的函数总是 ...
- jquery源码分析学习地址
http://www.ccvita.com/121.htmljQuery工作原理解析以及源代码示例http://www.cnblogs.com/haogj/archive/2010/04/19/171 ...
- jquery 源码分析学习地址
http://www.ccvita.com/121.htmljQuery工作原理解析以及源代码示例http://www.cnblogs.com/haogj/archive/2010/04/19/171 ...
随机推荐
- 批量导出docker images 的一个简单方法
docker images |cut -c - |xargs docker save -o iamges.tar 主要 最大的长度不能超过 18 超过了就得改一下 -c 后面的数据长度 最终效果为: ...
- ES-基本概念
目录: 1. ElasticSearch是什么 2. 基本概念 3. 几个关键词 正文: 1. ElasticSearch是什么 ElasticSearch是一个基于Lucene的搜索 ...
- 小记--------sparksql和DataFrame的小小案例java、scala版本
sparksql是spark中的一个模块,主要用于进行结构化数据的处理,他提供的最核心的编程抽象,就是DataFrame.同时,sparksql还可以作为分布式的sql查询引擎. 最最重要的功能就是从 ...
- 怎么将本地项目放到码云(gitee)上面?图文详解
git的好处什么的,在此就不多赘述.现在很多公司都在用git了. 那么怎么将本地已经有的项目放到码云(gitee)上呢? 前置条件说明: 1:原来项目所在位置:D:\workspace01\class ...
- Java 反射理解(二)-- 动态加载类
Java 反射理解(二)-- 动态加载类 概念 在获得类类型中,有一种方法是 Class.forName("类的全称"),有以下要点: 不仅表示了类的类类型,还代表了动态加载类 编 ...
- 19-Perl 特殊变量
1.Perl 特殊变量Perl 语言中定义了一些特殊的变量,通常以 $, @, 或 % 作为前缀,例如:$_.很多特殊的变量有一个很长的英文名,操作系统变量 $! 可以写为 $OS_ERROR.如果你 ...
- [C#.net]xlApp.Workbooks.Open打开无法远程访问
上月还能使用的xlApp.Workbooks.Open,这个月报无法远程访问,搞了半天,才找到原因是Foxit PDF 的Execl插件搞的鬼,记录下 Excel.Workbooks wbChecks ...
- DisableThreadLibraryCalls与DLLMain死锁
1.首先写个简单的DLL,用来验证 BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserve ...
- Sublime Text 3配置浏览默认路径为localhost
1.在 Sublime Text 3 中,安装 SideBarEnhancements 侧边栏增强插件.(注意:安装插件之前需要安装包管理工具,参考这里) 2.SideBarEnhancements ...
- 关于MySQL的索引的几件小事
零.索引简介 1. 索引是什么 ①MySQL官方对索引的定义是:索引(Index)是帮助MySQL高效获取数据的数据结构. ②可以简单的理解为"排好序的快速查找数据结构". ③除了 ...