JavaScript 笔记 (2)- JavaScript基本概念

原创 乘风逐月 随笔 JavaScript 293阅读 2018-04-18 12:13:05 举报
一、基本概念

1.语法: ECMAScript的语法大量借鉴了C及其他类C语言(如Java和Perl)的语法。
2.区分大小写: ECMAScript中的一切变量、函数名、操作符都区分大小写。
3.标识符: 标识符指的是变量、函数、属性、函数参数等,按以下规则组合:

4.严格模式: 在脚本顶部添加"use strict",它作为编译指示,告诉浏览器引擎切换到严格模式;在函数内部的上方包含这条编译指示,可以指定函数在严格模式下执行。
5.语句: ECMAScript中的语句以一个分号结尾,如果省略,则由解析器确定语句的结尾。
6.变量: ECMAScript中的变量是仅仅是一个用于保存值的占位符,可保存任何类型的数据。
7.数据类型: Undefined、Null、Boolean、Number、String和一种复杂数据类型Object。(ES6引入了新的一种原始型数据类型Symbol,表示独一无二的值,则有七种数据类型。

二、数据类型
1.Undefined 类型:

Undefined类型只有一个值,即特殊的undefined。在使用var声明变量但未对其加以初始化时,这个变量的值就是undefined。

2.Null类型:

Null类型是第二个只有一个值的数据类型,这个特殊的值是null。null值表示一个空对象指针,所有typeof操作符检测时会返回'object'。如果定义的变量准备在将来用于保存对象,那么最好将该变量初始化为null,而不是其他值。
注: null==undefined //true null===undefined //false

3.Boolean类型:

该类型只有两个字面值:true和false;
能转化为true的值:true,string(非空字符串),number(任何非0的数字值),object(任何对象);
能转化为false的值:false,''(空字符),number(0和NaN),null,Undefined

4.Number类型:

(1)浮点型: 数值中必须包含一个小数点,且小数点后面必须至少有一位数字。

(2)NaN: 即非数值,是一个特殊的数值,。这个数值用于表示一个本来要返回数值的操作未返回数值的情况(这样不会抛出错误)。

(3)数值转换: Number(),parseInt(),parseFloat()这三个函数可以把非数值转换为数值。
Number()转换规则:

parseInt()转换规则:

parseFloat()转换规则:

5.String类型

String类型由零或多个16位Unicode字符组成的字符序列,即字符串。字符串可以由双引号和单引号表示。

1.转义字符(字符字面量):
String数据类型包含一些特殊的字符字面量,也叫转义序列,用于表示非打印字符,或者有其他用途的字符。

这些转义字符可以出现在字符串的任意位置,而且被当做一个字符来解析,则长度
为一。
2.转换为字符串:
toString()方法: 返回相应值的字符串表现。

String(): 可以将任意值转为字符串。

6.Object类型

Object类型是所有它的实例的基础,它所具有的任何属性和方法也同样存在于更具
体的对象中。
Object的每个实例都具有下列属性和方法:

三、操作符
1.一元操作符:只能操作一个值的操作叫一元操作符

1.1递增递减操作符:
++,- -,有前置型和后置型
规则:

1.2一元加减操作符:
执行数学加减操作。对非数值变量时,该操作符对变量进行像Number()函数一样的值转换再运算。

2.布尔操作符:与(&&),非(!),或(||)

2.1 逻辑与(&&)
有两个操作数,属于短路操作,即如果第一个操作数能决定结果,则不会对第二个操作数求值。
遵循以下规则:

2.2 逻辑非(!):
可以应用于ECMAScript中的任何值,逻辑非会先将操作数转换为布尔值,再对其求反,最后会返回布尔值。
遵循以下规则:

2.3 逻辑或(||):
有两个操作数,属于短路操作。即如果第一个操作数求值为true,则不会对第二个操作数求值。
遵循以下规则:

3.乘性操作符:乘,除,求模。在操作数为非数值的情况下会自动执行类型转换。

3.1乘法:(*)
规则:

3.2除法:(/)
规则:

3.3求模(%):取余数
规则:

4.加性操作符

4.1加法:
规则:

4.2减法
规则:

5.关系操作符:小于(<),大于(>),小于等于(<=)和大于等于(>=),都返回布尔值

关系操作符是对数值进行比较,当使用了非数值操作数,要进行数据转换。
规则:

5.1 相等和不相等:==,!= ,这两个操作数都会先转换操作数(通常称为强制转换),再比较
规则:

5.2全等和不全等:===,!==,比较时不会转换数据类型。
代码中建议使用全等和不全等比较

6.三目运算符:

variable = boolean_expression ? true_value : false_value

7.typeof 操作符:检测给定变量或数值字面量的数据类型
四、语句
1.do-while:

循环体内的代码至少会被执行一次

2.while

循环体内的代码可能永远不会被执行

3.break和continue:

break:退出整个循环;
continue:退出当前循环,执行下一个循环

4.switch语句:

如果expression等于value1/value2,则执行statement。break会导致代码执行流跳出switch。如果省略break,导致执行完当前case会继续执行下一个case。default用于expression不匹配任何值时执行机动代码。
注:switch语句比较时使用全等比较,不会转换数据类型

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复