前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合

    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础

    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习

    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他

    • Handbook
    • 职场话题
    • CSS可视化
  • 框架文档

    • React
    • Vue3
    • Vite
    • Svelte
    • Angular
    • NodeJS
    • Egg
    • Nest
    • Koa
    • Express
    • Electron
    • Ionic
    • Taro
    • Uniapp
    • React Native
    • Webpack
    • Rollup
    • Jquery API
    • Bootstrap
    • Axios
    • Lodash
    • RXJS
    • Sequelize
    • TypeORM
    • Mongoose
    • GraphQL
    • Puppeteer
    • Sass
    • Less
    • Umi4
    • Miniprogram
  • 文档教程

    • Cheatsheets
    • Devdocs有可能是全球最全的文档库
    • Overapi
    • JavaScript 标准参考教程
    • ES6 入门教程
    • MDN在线文档
    • Typscript中文文档
    • JavaScript Promise迷你书(中文版)
    • Canvas API中文
    • Git中文手册
    • 云开发Cloudbase
    • Serverless中文文档
  • UI组件

    • Ant Design React
    • Ant Design Vue
    • Ant Design Pro
    • ProComponents
    • 腾讯Tdesign
    • NutUI京东风格的轻量级移动端 Vue 组件库
    • Semantic UI Vue
    • Cube UI Vue滴滴
    • Iview UI
    • 有赞Vant Vue3
    • 有赞Vant 小程序
    • Element UI Vue3
  • 可视化

    • Antv
    • Bizcharts
    • Threejs
    • D3js
    • Highcharts
    • Echarts
  • 配置相关

    • ESLint
    • Babel
    • Nginx中文文档
    • Github Action中文
    • Docker官方文档
    • Jenkins官方文档
  • 后端相关

    • Spring官方文档中文版
    • Spring Boot官方文档
    • Spring Cloud官方文档
    • Java8官方文档
    • maven官方文档
    • Tomcat 8官方文档
    • Kafka中文文档
    • MyBatis中文文档
    • RabbitMQ中文文档
    • Dubbo中文文档
    • Netty官方文档
    • Elasticsearch官方文档
    • K8S官方文档
  • 实用工具

    • 在线正则表达式调试工具
    • 在线正则表达式可视化
    • 常用正则表达式大全
    • 可以在线看代码流程的网站:loupe
    • 在线MD5编码工具
    • 在线JWT解码工具
    • 在线JSON解析
    • 在线文本比对
    • 在线JS代码格式化
    • 在线SQL压缩格式化
    • 在线XML压缩格式化
    • 在线时间戳转化工具
    • 在线RGB颜色转化工具
    • 在线HTTP在线接口测试工具
    • 在线IP地址查询
    • 在线菜鸟综合导航工具
  • 在线编程

    • MipCode快速的在线代码创作工具
    • Codepen
    • Jsbin
    • CodeSandBox在线快速学习React/Vue
    • Vue SFC Playground
    • Vue3 模板在线解析查看编译结果
    • Svelte Playground
    • 在线尝试Babel编译
    • Typescript在线编译
    • AST可视化编辑
    • 在线尝试Rollup打包
    • Prettier Playground
    • Stackblitz基于VSCODE的WEBIDE
    • NPM Runkit在浏览器中快速学习及尝试Node.js模块
    • Play with Docker在线体验
  • CSS相关

    • 用来帮助大家查找CSS的相关属性的语法,以及使用方法
    • 提供了CSS相关属性的浏览器兼容表,同时提供了对应属性资源
    • Flex在线动态练习
    • 贝塞尔曲线生成工具
    • SCSS在线转CSS
    • Clip-path在线生成器
    • Animate.css动画效果
    • 按需定制CSS动画效果
    • 一份清单,按字母表顺序列出了每个CSS属性
    • CSS按钮生成器
    • Css3按钮动画
    • CSS3渐变样式生成器,类似Photoshop中的渐变界面
    • CSS3 Maker可在线演示渐变阴影旋转动画并生成代码
    • CSS3 Tool非常方便的生成背景渐变、阴影、旋转和边框圆角效果
    • SVG背景生成
    • 多张图片合成雪碧图
    • 汇集了实现各种加载效果的CSS代码片段
    • SVG滤镜
    • HTML5 元素标签含义大全(元素周期表)
    • HTML语义化
    • KakaCss快速生成Css样式,在任意网站复制内容,再到本页面Ctrl+V
    • CSS参考手册
    • 各种各样的loading效果
    • CSS shadow generator
    • 通过拖拽的形式生成需要的border radius
    • 花式半径生成器-通过拖拽的形式生成需要的border radius
    • cssgrid-generator
  • 综合

    • 可视化学习算法网站
    • 在线Nginx配置
    • React生命周期查看网站
    • CodeFun设计稿智能生成源代码
    • Imgcook由设计稿一键智能生成代码的大厨
  • 创作必备

    • 在线画图processon
    • Draw.io免费的流行的流程图工具
    • 在线思维导图mindline
    • 在线字数统计
    • 在线mardown排版
    • 在线免费图床
    • 在线代码截图carbon
    • 在线短链生成
    • 在线文本替换
    • 在线文件压缩
    • 在线多媒体转换器
    • 在线PDF转化工具SmallPdf
    • 在线任意文件的格式转换Convertio
    • 在线PS工具
    • 在线抠图工具
    • LOGO在线制作
    • 在线制作海报设计工具
    • Open source icons
    • 表情包在线网站
    • 图片智能放大工具
    • ICO图标在线生成
    • 视频转GIF工具
    • 音频在线处理
    • 多图合成GIF工具
    • 在线图片压缩工具
    • Pixabay图片素材库
    • Unsplash图片素材库
    • Pexels图片素材库
小程序题库
公众号动态
博客动态
前端导航
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合

    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础

    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习

    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他

    • Handbook
    • 职场话题
    • CSS可视化
  • 框架文档

    • React
    • Vue3
    • Vite
    • Svelte
    • Angular
    • NodeJS
    • Egg
    • Nest
    • Koa
    • Express
    • Electron
    • Ionic
    • Taro
    • Uniapp
    • React Native
    • Webpack
    • Rollup
    • Jquery API
    • Bootstrap
    • Axios
    • Lodash
    • RXJS
    • Sequelize
    • TypeORM
    • Mongoose
    • GraphQL
    • Puppeteer
    • Sass
    • Less
    • Umi4
    • Miniprogram
  • 文档教程

    • Cheatsheets
    • Devdocs有可能是全球最全的文档库
    • Overapi
    • JavaScript 标准参考教程
    • ES6 入门教程
    • MDN在线文档
    • Typscript中文文档
    • JavaScript Promise迷你书(中文版)
    • Canvas API中文
    • Git中文手册
    • 云开发Cloudbase
    • Serverless中文文档
  • UI组件

    • Ant Design React
    • Ant Design Vue
    • Ant Design Pro
    • ProComponents
    • 腾讯Tdesign
    • NutUI京东风格的轻量级移动端 Vue 组件库
    • Semantic UI Vue
    • Cube UI Vue滴滴
    • Iview UI
    • 有赞Vant Vue3
    • 有赞Vant 小程序
    • Element UI Vue3
  • 可视化

    • Antv
    • Bizcharts
    • Threejs
    • D3js
    • Highcharts
    • Echarts
  • 配置相关

    • ESLint
    • Babel
    • Nginx中文文档
    • Github Action中文
    • Docker官方文档
    • Jenkins官方文档
  • 后端相关

    • Spring官方文档中文版
    • Spring Boot官方文档
    • Spring Cloud官方文档
    • Java8官方文档
    • maven官方文档
    • Tomcat 8官方文档
    • Kafka中文文档
    • MyBatis中文文档
    • RabbitMQ中文文档
    • Dubbo中文文档
    • Netty官方文档
    • Elasticsearch官方文档
    • K8S官方文档
  • 实用工具

    • 在线正则表达式调试工具
    • 在线正则表达式可视化
    • 常用正则表达式大全
    • 可以在线看代码流程的网站:loupe
    • 在线MD5编码工具
    • 在线JWT解码工具
    • 在线JSON解析
    • 在线文本比对
    • 在线JS代码格式化
    • 在线SQL压缩格式化
    • 在线XML压缩格式化
    • 在线时间戳转化工具
    • 在线RGB颜色转化工具
    • 在线HTTP在线接口测试工具
    • 在线IP地址查询
    • 在线菜鸟综合导航工具
  • 在线编程

    • MipCode快速的在线代码创作工具
    • Codepen
    • Jsbin
    • CodeSandBox在线快速学习React/Vue
    • Vue SFC Playground
    • Vue3 模板在线解析查看编译结果
    • Svelte Playground
    • 在线尝试Babel编译
    • Typescript在线编译
    • AST可视化编辑
    • 在线尝试Rollup打包
    • Prettier Playground
    • Stackblitz基于VSCODE的WEBIDE
    • NPM Runkit在浏览器中快速学习及尝试Node.js模块
    • Play with Docker在线体验
  • CSS相关

    • 用来帮助大家查找CSS的相关属性的语法,以及使用方法
    • 提供了CSS相关属性的浏览器兼容表,同时提供了对应属性资源
    • Flex在线动态练习
    • 贝塞尔曲线生成工具
    • SCSS在线转CSS
    • Clip-path在线生成器
    • Animate.css动画效果
    • 按需定制CSS动画效果
    • 一份清单,按字母表顺序列出了每个CSS属性
    • CSS按钮生成器
    • Css3按钮动画
    • CSS3渐变样式生成器,类似Photoshop中的渐变界面
    • CSS3 Maker可在线演示渐变阴影旋转动画并生成代码
    • CSS3 Tool非常方便的生成背景渐变、阴影、旋转和边框圆角效果
    • SVG背景生成
    • 多张图片合成雪碧图
    • 汇集了实现各种加载效果的CSS代码片段
    • SVG滤镜
    • HTML5 元素标签含义大全(元素周期表)
    • HTML语义化
    • KakaCss快速生成Css样式,在任意网站复制内容,再到本页面Ctrl+V
    • CSS参考手册
    • 各种各样的loading效果
    • CSS shadow generator
    • 通过拖拽的形式生成需要的border radius
    • 花式半径生成器-通过拖拽的形式生成需要的border radius
    • cssgrid-generator
  • 综合

    • 可视化学习算法网站
    • 在线Nginx配置
    • React生命周期查看网站
    • CodeFun设计稿智能生成源代码
    • Imgcook由设计稿一键智能生成代码的大厨
  • 创作必备

    • 在线画图processon
    • Draw.io免费的流行的流程图工具
    • 在线思维导图mindline
    • 在线字数统计
    • 在线mardown排版
    • 在线免费图床
    • 在线代码截图carbon
    • 在线短链生成
    • 在线文本替换
    • 在线文件压缩
    • 在线多媒体转换器
    • 在线PDF转化工具SmallPdf
    • 在线任意文件的格式转换Convertio
    • 在线PS工具
    • 在线抠图工具
    • LOGO在线制作
    • 在线制作海报设计工具
    • Open source icons
    • 表情包在线网站
    • 图片智能放大工具
    • ICO图标在线生成
    • 视频转GIF工具
    • 音频在线处理
    • 多图合成GIF工具
    • 在线图片压缩工具
    • Pixabay图片素材库
    • Unsplash图片素材库
    • Pexels图片素材库
小程序题库
公众号动态
博客动态
前端导航
javascript笔记总结篇
首页
2016-09-24 10:33:00
Front-End
JavaScript

转载请声明出处 博客原文

随手翻阅以前的学习笔记,顺便整理一下放在这里,方便自己复习,也希望你有也有帮助吧

# 第一课时 入门基础


# 知识点:


  • 操作系统就是个应用程序
  • 只要是应用程序都要占用物理内存
  • 浏览器本身也是一个应用程序
  • 浏览器本身只懂得解析HTML
  • 调用浏览器这个应用程序的一个功能绘制

# 1、javascript介绍


  • JavaScript操作DOM的本质是=获取+触发+改变

  • 目的:就是用来操作内存中的DOM节点

    • 修改DOM节点的属性
    • 过javascript语法组织逻辑代码操作DOM
    • BOM(window)它包含了DOM
    • DOM(document)
    • script脚本推荐放在最下边好处:防止因网络问题,页面加载时间长,出现空白;即便网络问题,浏览器也把DOM加载渲染完成,等待从服务端下载完js脚本,出现效果
    • css不放在最下面原因通俗地讲:好比先穿好衣服在出去,浏览器先把css样式准备好,在加载结构层,使得页面有样子;如果放在下面,因为页面是从上往下加载,没有css,就剩下裸露的标签,很难看,使得用户体验不好

# 2、基于对象的内存管理


  • javascript就是来操作这些对象
    • 通过逻辑组织对象之间的关系和行为
    • 如何操作这些对象?通过变量引用

# 3、变量


  • 变量本质是一个空盒子,里面记录了一个内存地址,使能找到内存中的对象,保存了指向具体的实在的东西的地址

  • 变量存在栈中,对象存在堆中

  • 变量的意义:方便我们去操作对象

  • 变量的几种引用方式

    • 指针(C语言中叫法)
    • 引用(Java)
    • 变量
  • 例如:

    • var b = document.body 含义:把body这个对象在内存中的地址放到b变量里面,变量b(b是内存地址的别名)本身也存在内存中,以后的操作是针对body这个地址
  • 变量命名规范

    • 由字母(a-zA-Z)数字(0-9)下划线(_)以及美元符号($)
    • 不能由数字开头
    • 命名尽量用英文并且具有一定的含义
    • 如果有多个英文单词,后面单词的首字母大写
    • 不能使用关键字
    • 首字母不要大写,大写是有特殊含义的

# DOM在内存中的一些图示


DOM Tree

DOM内存图

DOM内存图

DOM内存图

# 第二课时


# 回顾上节:

  • 1、javascript介绍

  • 2、基于对象的内存管理

  • javascript就是来操作这些对象

    • 通过逻辑组织对象之间的关系和行为
    • 如何操作这些对象?通过变量引用
  • 3、变量

# 知识点:


# 1、window作用域


  • 只要在script标签中定义的变量,默认就在window的作用域之下
  • 默认就是window这个对象里面写代码

# 2、数据类型


# 如何判断js中的数据类型:

  • typeof、instanceof、 constructor、 prototype方法比较

  • 如何判断js中的类型呢,先举几个例子:

var a = "iamstring.";
var b = 222
fe
Preview
  • 第一课时 入门基础
    • 知识点:
    • 1、javascript介绍
    • 2、基于对象的内存管理
    • 3、变量
    • DOM在内存中的一些图示
  • 第二课时
    • 回顾上节:
    • 知识点:
    • 1、window作用域
    • 2、数据类型
      • 如何判断js中的数据类型:
        • 最常见的判断方法:typeof
        • 判断已知对象类型的方法: instanceof
        • 根据对象的constructor判断: constructor
        • 通用但很繁琐的方法: prototype
    • Javascript的数据类型有六种(ES6新增了第七种Symbol)
    • 内存中一共分为几种对象:
    • 数据类型转换
      • 转换函数
      • 强制类型转换
      • 隐式转换
      • null和undefined
    • 3、javascript脚本执行顺序
    • 总结一下==运算的规则:(隐式转换)
  • 第三课时
    • 上节回顾:
    • 知识点:
    • 1、运算符
      • 条件运符(表达式1?表达式2:表达式3)三元运算符
    • 2、在js中 有四种被认为是非:
  • 第四课时
    • 上节回顾:
    • 知识点:
      • 1、console.log调试程序
      • 2、条件结构
        • javascript中if语句优化写法
  • 第五课时
    • 上节回顾:
    • 知识点:
      • 1、switch
      • 2、for
  • 第六课时
    • 上节回顾:
    • 知识点:
    • 1、while/do...while 没有谁好谁坏 只有适应场景不同
    • 2、代码内存解析
      • 闭包
      • 闭包 作用域
    • 4、object对象
    • 5、面向对象的程序设计
    • 一些内存图示
    • 原型链的几张图解
  • 第七课时
    • 上节回顾:
    • 知识点:
    • 1、object对象
      • new 原理详细解析
      • new创建对象的步骤
    • 2、面向对象的程序设计
      • 多种构造函数
        • 传统的创建对象
        • 工厂模式
        • 构造函数
        • 原型模式
        • 简单原型模式
        • 构造函数和原型模式
        • 动态原型模式
        • 稳妥构造函数
    • 其他:
    • 一些内存图示
  • 第八课时
    • 上节回顾:
    • 1.object对象
    • 2.面向对象的程序设计
    • 知识点:
    • 1.prototype内存解析
    • 2.通过prototype扩展功能
    • 一些内存图示
  • 第九课时
    • 回顾:
      • 1、prototype内存解析
      • 2、通过prototype扩展功能
      • 3、封装
    • 知识点:
    • 一些内存图示
  • 第十课时
    • 上节回顾:
    • 1.继承
    • 2.call apply方法的使用
    • 知识点:
    • API application program interface
    • 常用API
      • 日期型函数Date
      • 字符串String型函数API
      • Math对象型
      • Number型 常用的数字函数
      • 5.Regex
    • 一些图示
  • 第十一课时
    • 上节回顾:
    • 知识点:
  • 第十二课时
    • 上节回顾:
    • 新知识点:
  • 第十三课时
    • 上节回顾:
    • 新知识:
    • 1.BOM 浏览器对象模型
    • 2.DOM 文档对象模型
  • 第十四课时
    • 上节回顾:
    • 新知识点:
    • 1.DOM 文档对象模型
      • document
      • element
    • DOM 操作:
    • 操作DOM对象:
    • 节点的查找:(最重要)
    • DOM中查找节点的思路:(由大到小 个别情况 由子到父)
    • 继续查找:
    • DOM与节点的关系:
      • DOM属性小结
      • DOM方法小结
  • 第十五课时
    • 上节回顾:
    • 1.DOM 文档对象模型
      • document
    • 新知识点:
    • 1.事件(事故)基础
    • 2.常用事件
    • 浏览器事件注意事项:
  • 总结
  • js一些资料推荐
  • 附录一份大神总结的关于js的导图

← HTML5+CSS3整体回顾DOM编程之API学习总结篇 →