JavaScript基础详解

   本文总结下JS的基础知识,包括基本语法,数据类型和变量,运算,字符串,数组,对象,条件判断,循环,Map和Set,iterable等知识点。下面来看详解

(1)拓展

   引用:首先讲下JS引用,两种方式:嵌入式和外部调用

   编辑器:推荐使用Sublime Text和WebStorm,PyCharm

(2)基本语法

   ①冒号结尾与{}

   语法和Java语言类似,每个语句以;结束,语句块用{...}

虽然JavaScript并不强制要求在每个语句的结尾加;(浏览器引擎会自动补上),但是这里在开发过程中建议最好不要省略。因为让浏览器引擎自动加分号在某些情况下会改变程序的语义,导致运行结果与期望不一致

   ②缩进

   注意花括号{...}内的语句具有缩进,通常是4个空格。缩进不是JavaScript语法要求必须的,但缩进有助于我们理解代码的层次,所以编写代码时要遵守缩进规则。很多文本编辑器具有“自动缩进”的功能(例如WebStorm的Ctrl+Alt+L)可以帮助整理代码

   ③注释

   行注释和块注释(注释是给开发人员看到,JavaScript引擎会自动忽略)

行注释:以//开头直到行末的字符被视为行注释

// 这是一个行注释

块注释:用/*...*/把多行字符包裹起来,把一大“块”视为一个注释

/* 从这里开始是块注释
仍然是注释
仍然是注释
注释结束 */

   ④大小写

JavaScript严格区分大小写,如果弄错了大小写,程序将报错或者运行不正常

(3)数据类型和变量

 ①数据类型

分两类:简单数据 和 复杂数据

简单数据有undefined,null,boolean,number和string这五种;复杂数据只有一种,即对象(object)

   简单数据类型:

[1] undefined : 表示变量不含有值;

[2] null : 表示变量为空;

[3] boolean : true 或 false 代表布尔值;

[4] number : js只有一种数字类型,数字可以带小数点,也可以不带

[5] srting : 字符串是字符的载体,而且必须被成对的引号包围

   注意:typeof是javascript提供的运算符,运行后会返回括号之中数据的数据类型

             如 typeof(3) 返回结果是 'number',则'hello'的类型是数字

(4)运算

①常用的运算符号

   算术运算符:+  加号,-  减号,/  除号,*  乘号,%  求余,++ 累加,-- 递减

   逻辑运算符:&&与,||或,!非

   比较运算符:== ,===, != , > , < , >= , <= 

注意:

   ①JavaScript在设计时,有两种比较运算符:

第一种是==比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果;

第二种是===比较,它不会自动转换数据类型,如果数据类型不一致,返回false,如果一致,再比较

例如:

if('1'==1){
      alert('相同')
}else{
      alert('不同')
}

 因为用了==去做判断,所以会转换数据类型,即这里会提示‘相同’

建议:由于JavaScript这个设计缺陷,建议不要使用==比较,始终坚持使用===比较

   ②NaN这个特殊的Number与所有其他值都不相等,包括它自己。具体详解我在后面文章JavaScript中NAN详解里做了总结

(7)字符串

.