2019-03-23

JavaScript基本语法、流程控制、函数和数组等基本知识点的整理

第一章 基本语法

变量

数据类型

运算符

流程控制

  了解JS就让我们从最基本的开始!

变量

1.标识符

(1)由大小写字母、数字、下划线和美元符号($)组成,如str、 arr3、get name.

   (2)不能以数字开头,如56name是非法标识符。

   (3)严格区分大小写,如it与I表示两个不同的标识符。

   (4)不能使用JavaScript中的关键字命名,如var作为变量名是不合法的。(5)要尽量要做到“见其名知        其意”,如name表示名称,age表示年龄等。

2.保留字和关键字


3.变量的使用

未赋初始值的变量,默认值会被设定为undefined。行末的分号表示语句结束。变量与变量之间的逗号(,)操作符,可实现一条语句同时完成多个变量的声明。

以下是演示:

4.变量的赋值

声明完成后就可以赋值,也可以在声明的同时赋值。应有描述性,让别人一眼就能辨识名称的意义驼峰型,大小写混合的形式变量的第一个词全都小写,后续的词则首字母大写。


5.变量的布局:局部和全局


数据类型

1.数据类型分类

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。

引用数据类型:对象(Object)、数组(Array)、函数(Function)。

2.基本数据类型

(1)布尔(逻辑)只能有两个值:true 或 false。


(2)数值型:最基本的数据类型不区分整型数值和浮点型数值。“—”:表示负数,“+”:表示正数,一般省略。

(3)字符型:由Unicode 、数字等组成的字符序列,单引号('')和双引号(“”)。还有空字符串定义。


(4)空型(Null):一个不存在的或者无效的对象地址。


(5)未定义型(Undefined): 这个值表示变量不含有值。在使用var声明变量但未对其加以初始化时,这个变量值就是undefined。对于尚未声明的变量,可以使用typeof操作符检测其数据类型。返回值也为:undefined值,和定义后未赋初值的变量一样。

3.数据类型检测

(1)typeof 操作符:来检测变量的数据类型。


4.数据类型转换

(1)转布尔型:经常用于表达式和流程控制语句中,如数据的比较、条件的判断。通过Boolean()实现。注意:Boolean()会将任何空字符串和非零字符串的数值转换为true,将空字符串、0、NaN、undefined和null转换为false。

(2)转数值型:开发中在接收用户传递的数据进行运算时,为了保证参与运算的都是数值型,经常需要对其进行转换。利用Number()、parseInt()、parseFloat()进行转换。

利用isNaN()函数来确定。

第一个表示:转换成后结果是:123。

第二个表示:转换后结果是:15(转换成16进制)。

(3)转字符型

String()函数:可以将任意类型转换为字符串。

toString()函数:除了null和undefined没有toString()方法,其他数据类型都可以转换。


运算符

(1)算术运算符

(2)赋值运算符


(3)用于字符串的“ + ” 运算符。有相加和拼接两个功能。只要出现字符就是拼接的功能。

(4)比较运算符

流程控制

1.选择结构

(1)if.....else

(2)switch语句:首先设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。请使用 break 来阻止代码自动地向下一个 case 运行。

2.循环结构

(1)while循环

(2)for循环

语句 1(代码块)开始前执行

语句 2定义运行循环(代码块)的条件

语句 3在循环(代码块)已被执行之后执行

(3)do....while循环:该循环会在检查条件是否为真之前执行一次代码块,然后如果条件为真的话,就会重复这个循环。

(4)for...in/for...of循环

for..in: 循环中的代码块将针对每个属性执行一次。

for...of是 ES6 新引入的特性。它既比传统的for循环简洁,同时弥补了forEach和for-in循环的短板。for-of 的语法看起来跟 for-in 很相似,但它的功能却丰富的多,它能循环很多东西。

(5)let 和 const关键字

let 声明的变量只在 let 命令所在的代码块内有效。

const 声明一个只读的常量,一旦声明,常量的值就不能改变。

(6)跳转语句

你可能感兴趣的:(2019-03-23)