当前位置: 首页 > Web前端 > HTML5

前端实训-初级阶段(13)-ECMAScript(语法、变量、值、类型、运算符、语句)

时间:2023-04-05 20:17:13 HTML5

最基础的前端就是HTML+CSS+Javascript。掌握这三项技术算是入门,但也只是入门而已。现在前端开发的定义远不止于此。前端小课堂(HTML/CSS/JS),本着提高技术水平,夯实基础知识的中心思想,开课(每周四)。本文是前端培训-初级阶段(13、18)(介绍ECMAScript的历史,ES6的共同点)的补充。本文介绍了ECMAScript的基础知识。我们要讨论什么语法?变量类型、值运算符语句语法如果你熟悉任何高级编程语言开发者,你会发现ECMAScript的语法很容易掌握,因为差距不是很大,也有可供参考的地方。特别是因为有一些与Java相同的关键语法特征,而且这些名称都是炒作。区分大小写的var和Var是不同的变量。变量是弱类型的,这和其他语言有很大区别(前端也有TS)。末尾的分号不是必须的但是比如(()=>console.log('ln'))(),有时候容易出现异常错误window.a;(v=>console.log(v))(1)window.a(v=>console.log(v))(1)Comments单行注释以双斜杠(//)开头多行注释以单斜杠和星号(/*)开头,以星号和单斜线括号在末尾(*/)括号表示代码块不会生成块级作用域(旧版本)变量命名规则第一个字符必须是字母、下划线(_)或美元符号($),其余字符可以是下划线,美元符号或者任何字母数字字符声明方式var声明变量,变量提升let会生成块级作用域const生成一个不可改变的常量类型,value原始类型是一个简单的数据段存储在栈(stack)中,也就是说,它们的值直接存储在变量访问的地方。原型类型有Undefined、Null、Boolean、Number和String。由于这些原始类型占用固定大小的空间,因此可以将它们存储在较小的内存区域(堆栈)中。这种存储方便快速查找变量的值。您可以使用typeof来确定类型注释是什么:您可能会问为什么typeof运算符为null值返回“Object”。这实际上是JavaScript最初实现中的一个错误,后来被ECMAScript采用。现在,null被认为是一个对象的占位符,这解释了不一致,但它在技术上仍然是一个原始值。undefined当声明的变量没有初始化,或者对象中不存在的值。被认为是未分配的值。Null对象占位符,被认为是一个空值。Boolean布尔值真假。Number可以表示32位整数和64位浮点数。浮点字面量的有趣之处在于,在用它们进行计算之前,实际存储的是一个字符串。浮点值以64位IEEE754形式存储,这意味着十进制值最多可以有17位小数。17位后的值被截断,造成一些小的数学错误。String字符串类型是指存放在堆(heap)中的对象,即变量中存放的值是一个指针(point),指向存放对象的内存。这个类型指的是Object,当然还有Array,也是对象的一种。运算符运算符优先级示例说明。[]()1Math.random();arr[0];(a+1)*b字段访问、数组下标、函数调用和表达式分组++--+-~!删除新类型void2++a;a++;+a;-a;~a;!a;一元运算符*/%3++a;a++;+a;-a;~a;!a;二元运算符、算术运算符、乘法、除法、余数+-4a+b;a+'';a-b二元运算符、算术运算符、加减法、字符串连接<<>>>>52>>1二元运算符、按位运算符,displacement,unsigneddisplacement<<=>>=instanceof62>1个二元运算符,比较运算符==!====!==72==1个二元运算符,比较运算符&82&1个二元运算符,按位运算符,按位与^92^1二元运算符,按位运算符,按位异或110211二元运算符,按位运算符,按位或&&112&&1二元运算符,逻辑运算符,短路11122111二元运算符,逻辑运算符,短路?:13``三元运算符,条件运算符=oP=14``二元运算符,赋值运算符符号,15``逗号,多语句语句函数示例说明if逻辑判断if(a%2==0){console.log('evennumber')}用于判断条件为真,执行代码if(){}else{}if(){}elseif(){}else{}switch(){case:break;default:break;}和if类似但是是单值匹配找到对应的状态执行代码for(initialvalue;判断;stepsize){}循环for(var=1;i<10;i++)console.log(i)完成多个相同功能的任务while(判断){}循环完成多个相同功能的任务do{}尽管();循环使用相同功能的多个任务