1、编程语言和标记语言的区别
- 编程语言有很强的逻辑和行为能力,通常是主动的指令,如:if、while等。
- 标记语言不用于向计算机发出指令,常用于格式化和链接,通常是被读取的。
2、JavaScript是什么
JavaScript是一种运行在客户端(自己的电脑)的脚本语言(脚本语言即不需要编译,运行过程由js解释器逐行来进行解释并执行的语言),现在可以基于Node.js技术进行服务器端编程。
3、浏览器执行JS简介
浏览器分为两个部分:①渲染引擎:解析HTML和CSS,俗称内核,比如chrome浏览器的blink,老版本的webkit ②JS引擎:称为JS解释器,用来读取网页中的JavaScript代码,对其处理后运行,比如chrome浏览器的V8(浏览器本身并不会执行JS代码,而是通过内置的JS引擎(解释器)来执行JS代码,JS引擎逐行解释每一句源码,将其转换为机器语言)
4、JS的组成
ECMAScript:规定了JS的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套JS语法工业标准。
DOM:文档对象模型,是处理可扩展标记语言的标准编程接口,通过DOM提供的接口可以对页面上的各种元素进行操作。
BOM:浏览器对象模型,提供了独立于内容的、可以与浏览器窗口进行互动的对象结构,通过BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。
5、JS三种书写位置
1、行内式
- HTML中推荐使用双引号,JS中推荐使用单引号
- 可以将单行或者少量JS代码写在HTML标签的是加属性中,但可读性差
2、内嵌式
- 可以将多行JS代码写在<script>标签中
- 内嵌JS是学习时常用的方式
3、外联式
- 利于HTML页面代码结构化
- 引用外部JS文件的script标签中间不可以写代码
- 适合于JS代码量比较大的情况
6、JS输入输出语句
7、变量
- 声明变量:var是JS的一个关键字,用来声明变量(variable变量的意思),使用关键字声明变量之后,计算机就会自动为变量分配内存空间。
变量名的使用(注意:输出变量名时,不用加引号哦)
- 变量命名规范:不能以数字开头;不能是关键字;遵循驼峰命名法,首字母小写,后面的单词首字母大写:如myFirstName
- 变量的数据类型:JavaScript是一种弱类型或者说是动态语言,这意味着不用提前声明变量的类型,只有在运行过程中,类型才能被自动确定。
如c语言中,需在声明时就确定数据类型:int a = 10;
而JS中,可以 var age = 10; 也可以var str = ‘abcdefg';
JS拥有动态类型,意味着相同的变量可用作不同的类型:var a = 10; var a = 'Bill';
8、简单数据类型
字符串
1、 字符串型的引号可双可单,若有嵌套,则遵循外双内单,外单内双的规则。
2、 字符串中的转义字符(写在引号内):
3、字符串的长度:str.length
4、字符串的拼接:str + 任何类型 = 新的字符串
布尔型
1、false和true可以用于加法运算,分别当作0和1
未定义型
1、未定义型与数值相加得NaN(非数值)
空值
1、空值与数值相加得该数值
9、数据类型转换
用typeof 检测变量数据类型
转换为字符串型
注:最常用的是第三种转换方式,称为隐式转换 num + ' ' ; 即可将数字型的num转换为字符型
转换为数值型
转换为布尔型
10、运算符
- 自增自减
注:自增自减在单独使用时,是一样的结果
- 逻辑中断(短路运算)
短路运算的原理:当有多个表达式(值)时,左边的表达式值可以确定整个结果时,就不再进行右边表达式的计算。
逻辑中断与:如果表达式1为真,则返回表达式2的值;如果表达式1为假,则返回表达式1的值
逻辑中断或:如果表达式1为真,则返回表达式1的值;如果表达式1为假,则返回表达式2的值
- 运算符优先级
九九乘法表案例
简易ATM案例