声明:本人前端学习笔记的所有内容均为b站上pink老师课程的学习笔记,如果想详细了解的可以搜索以下网址:
- H5C3+移动布局: 黑马程序员pink老师前端入门视频教程 HTML5+CSS3+移动端布局-flex布局rem布局响应式布局摹客蓝湖使用-简单有趣好玩
- JavaScript系列 :JavaScript基础语法-dom/bom-es6-jQuery-数据可视化echarts-包含笔记源码作业黑马程序员pink老师前端入门视频教程(持续更新)
文章目录
一、计算机编程基础
1.1 编程语言
计算机语言可以分成机器语言,汇编语言和高级语言三大类。
- 实际上计算机最终所执行的都是机器语言,它是由“0”和“1”组成的二进制数,二进制是计算机语言的基础
- 汇编语言和机器语言实质是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,容易识别和记忆。
- 高级语言主要是相对于低级语言而言,它不是特指某一种具体的语言,而是包括了很多编程语言,常用的有C语言、C++、Java、C#、Python
编程语言和标记语言的区别
- 编程语言有很强的逻辑和行为能力。在编程语言里, 你会看到很多if else 、for 、while等具有逻辑性和行为能力的指令,这是主动的。
- 标记语言(html)不用于向计算机发出指令,常用于格式化和链接。标记语言的存在是用来被读取的, 他是被动的。
1.2 计算机基础
1. 计算机组成
2. 数据存储
- 所有数据,包括文件、图片等最终都是以二进制数据(0 和1)的形式存放在硬盘中的。
- 所有程序,包括操作系统,本质都是各种数据,也以二进制数据的形式存放在硬盘中。平时我们所说的安装软件,其实就是把程序文件复制到硬盘中。
- 硬盘、内存都是保存的二进制数据。
3. 数据存储单位:bit < byte < kb < GB < TB<…
4. 程序运行:(1)打开某个程序时,先从硬盘中把程序的代码加载到内存中,(2)CPU执行内存中的代码
1.3 解释型语言和编译型语言
计算机不能直接理解任何除机器语言以外的语言,所以必须要把程序员所写的程序语言翻译成机器语言才能执行程序。程序语言翻译成机器语言的工具,被称为翻译器。
- 翻译器翻译的方式有两种:一个是编译,另外一个是解释。两种方式之间的区别在于翻译的时间点不同
- 编译器是在代码执行之前进行编译,生成中间代码文件(首先把所有菜做好,才能上桌吃饭)
- 解释器是在运行时进行及时解释,并立即执行(当编译器以解释方式运行的时候,也称之为解释器)(好比吃火锅,边吃边涮,同时进行)
二、JavaScript初识
2.1 JavaScript是什么
- JavaScript 是世界上最流行的语言之一,是一种运行在客户端的脚本语言(Script 是脚本的意思)
- 脚本语言:不需要编译,运行过程中由**js 解释器( js 引擎)**逐行来进行解释并执行
- 现在也可以基于Node.js 技术进行服务器端编程
2.2 JavaScript的作用
- 表单动态校验(密码强度检测)(JS 产生最初的目的)
- 网页特效
- 服务端开发(Node.js)
- 桌面程序(Electron)
- App(Cordova)
- 控制硬件-物联网(Ruff)
- 游戏开发(cocos2d-js)
2.3 HTML/CSS/JS的关系
HTML/CSS 标记语言–描述类语言
- HTML 决定网页结构和内容( 决定看到什么),相当于人的身体
- CSS 决定网页呈现给用户的模样( 决定好不好看),相当于给人穿衣服、化妆
JS 脚本语言–编程类语言
- 实现业务逻辑和页面控制( 决定功能),相当于人的各种动作
2.4 浏览器执行 JS 简介
浏览器分成两部分:渲染引擎和 JS 引擎
- 渲染引擎:用来解析HTML与CSS,俗称内核,比如chrome 浏览器的blink ,老版本的webkit
- JS 引擎:也称为 JS 解释器。用来读取网页中的JavaScript代码,对其处理后运行,比如chrome 浏览器的V8
浏览器本身并不会执行JS代码,而是通过内置JavaScript 引擎(解释器) 来执行JS 代码。JS 引擎执行代码时逐行解释每一句源码(转换为机器语言),然后由计算机去执行,所以JavaScript 语言归为脚本语言,会逐行解释执行。
2.5 JS的组成
1. ECMAScript
ECMAScript 是由ECMA 国际(原欧洲计算机制造商协会)进行标准化的一门编程语言,这种语言在万维网上应用广泛,它往往被称为JavaScript 或 JScript,但实际上后两者是ECMAScript 语言的实现和扩展。
ECMAScript:ECMAScript 规定了JS的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套JS语法工业标准
2. DOM - 文档对象模型
文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过DOM 提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)。
3. BOM - 浏览器对象模型
BOM (Browser Object Model,简称BOM) 是指浏览器对象模型,它提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。通过BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。
2.6 JS初体验
JS 有3种书写位置,分别为行内、内嵌和外部。
1. 行内式JS
<input type="button" value="点我试试" onclick="alert('Hello World')" />
- 可以将单行或少量JS 代码写在HTML标签的事件属性中(以on 开头的属性),如:onclick
- 注意单双引号的使用:在HTML中我们推荐使用双引号, JS 中我们推荐使用单引号
- 可读性差,在html中编写JS大量代码时,不方便阅读;
- 引号易错,引号多层嵌套匹配时,非常容易弄混;
- 特殊情况下使用
2. 内嵌JS
<script>
alert('Hello World~!');
</script>
- 可以将多行JS代码写到<script> 标签中
- 内嵌JS 是学习时常用的方式
3. 外部JS文件
<script src="my.js"></script>
- 利于HTML页面代码结构化,把大段JS代码独立到HTML 页面之外,既美观,也方便文件级别的复用
- 引用外部JS文件的script 标签中间不可以写代码
- 适合于JS 代码量比较大的情况
2.7 JavaScript注释
1. 单行注释
为了提高代码的可读性,JS与CSS一样,也提供了注释功能。JS中的注释主要有两种,分别是单行注释和多行注释。
单行注释的注释方式如下:
// 我是一行文字,不想被JS引擎执行,所以注释起来
// 用来注释单行文字(快捷键ctrl + / )
2. 多行注释
/*
获取用户年龄和姓名
并通过提示框显示出来
*/
/* */ 用来注释多行文字(默认快捷键alt + shift + a )
快捷键修改为:ctrl + shift + /
vscode文件 →首选项按钮→键盘快捷方式→查找原来的快捷键→修改为新的快捷键→回车确认
2.8 JavaScript输入输出语句
为了方便信息的输入输出,JS中提供了一些输入输出语句,其常用的语句如下:
方法 | 说明 | 归属 |
---|---|---|
alert(msg) | 浏览器弹出警示框 | 浏览器 |
console.log(msg) | 浏览器控制台打印输出信息 | 浏览器 |
prompt(info) | 浏览器弹出输入框,用户可以输入 | 浏览器 |