前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,如今前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS),本着提高技术水平,打牢基础知识的中心思想,咱们开课啦(每周四)。javascript
该文为前端培训-初级阶段(1三、18) (介绍了 ECMAScript 历史,ES6 经常使用点)的补充内容。前端
本文介绍ECMAScript基础知识。java
若是是熟悉任意一门高级编程语言的开发者会发现 ECMAScript 的语法很容易掌握,由于差距不是很大,其中也有借鉴的地方。尤为是与 Java 有一些关键的语法特性相同,名字都是蹭热度。编程
var
与 Var
是不一样的变量结尾分号不是必须的 可是好比(()=>console.log('ln'))(),有时候容易出现异常错误segmentfault
window.a ;(v=>console.log(v))(1) window.a (v=>console.log(v))(1)
注释数组
//
)/*
),以星号和单斜杠结尾(*/
)声明方式dom
原始类型
存储在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置。
原型类型有 Undefined、Null、Boolean、Number 和 String 。因为这些原始类型占据的空间是固定的,因此可将他们存储在较小的内存区域中(栈)。这样存储便于迅速查寻变量的值。
可使用 typeof
来判断是什么类型编程语言
注释:您也许会问,为何 typeof 运算符对于 null 值会返回 "Object"。这其实是 JavaScript 最初实现中的一个错误,而后被 ECMAScript 沿用了。如今,null 被认为是对象的占位符,从而解释了这一矛盾,但从技术上来讲,它仍然是原始值。
Number 能够表示 32 位的整数,还能够表示 64 位的浮点数。对于浮点字面量的有趣之处在于,用它进行计算前,真正存储的是字符串。函数
用 64 位 IEEE 754 形式存储浮点值,这意味着十进制值最多能够有 17 个十进制位。17 位以后的值将被裁去,从而形成一些小的数学偏差。
运算符 | 优先级 | 例子 | 描述 |
---|---|---|---|
. [] () |
1 | Math.random();arr[0];(a+1)*b |
字段访问、数组下标、函数调用以及表达式分组 |
++ -- + - ~ ! delete new typeof void |
2 | ++a;a++;+a;-a;~a;!a; |
一元运算符 |
* / % |
3 | ++a;a++;+a;-a;~a;!a; |
二元运算符,算数运算符,乘、除、余 |
+ - |
4 | a+b;a+'';a-b |
二元运算符,算数运算符,加减、字符串链接 |
<< >> >>> |
5 | 2>>1 |
二元运算符,位运算符,位移,无符号位移 |
< <= > >= instanceof |
6 | 2>1 |
二元运算符,比较运算符 |
== != === !== |
7 | 2==1 |
二元运算符,比较运算符 |
& |
8 | 2&1 |
二元运算符,位运算符,按位与 |
^ |
9 | 2^1 |
二元运算符,位运算符,按位异或 |
1 |
10 | 211 |
二元运算符,位运算符,按位或 |
&& |
11 | 2&&1 |
二元运算符,逻辑运算符,短路 |
11 |
12 | 2111 |
二元运算符,逻辑运算符,短路 |
?: |
13 | `` | 三元运算符,条件运算符 |
= oP= |
14 | `` | 二元运算符,赋值运算符 |
, |
15 | `` | 逗号,多重 |
语句 | 功能 | 示例 | 描述 |
---|---|---|---|
if | 逻辑判断 | if(a % 2 == 0){console.log('偶数')} | 用来判断条件成立执行代码 |
if(){}else{} | |||
if(){}else if(){}else{} | |||
switch(){case:break;default:break;} | 相似于if可是是单值匹配 | 找到对应状态执行代码 | |
for(初值;判断;步长){} | 循环遍历 | for(var = 1;i < 10; i++) console.log(i) | 完成多个相同功能的任务 |
while(判断){} | 循环遍历 | 完成多个相同功能的任务 | |
do{}while(); | 循环遍历 | 完成多个相同功能的任务 |