从Java角度讲JavaScript

2020-12-30  本文已影响0人  企业信息化架构

工作需要,最近需要学习JavaScript。原本是Java开发后台,在学习JavaScript处理前端工程的时候,发现JavaScript和Java的一些开发上的区别。

变量

Java采用强类型变量检查,即所有变量在编译之前必须做声明;JavaScript中变量是弱类型的,甚至在使用变量前可以不作声明,JavaScript的解释器在运行时检查推断其数据类型。

形参和实参

Java的方法在没有声明可变长参数情况下,实参数目和形参数目需要一致,JavaScript的调用函数时传递的实参数目与形参不一定相同的。
JavaScript调用函数传递的实参与定义函数规定的形参是依次对应的,即第1个实参的值传递给第1个形参,第2个实参的值传递给第2个形参(但又不是绝对,例如vuex中mutations的方法,第1个形参数默认是state,不需要再实参中传递值,第1个实参是传递给第2个形参)。

Lambda

Lambda(箭头函数)在日常的Java开发中使用较少,但是再JavaScript开发中经常使用,最常见的就是Promise的回调处理。
后面是小括号的箭头函数默认只有一行代码,默认有返回,后面是大括号的默认是代码段,默认没有返回值,需要手动添加return。

const f2=(a,b)=>(a+b)

const f =(a,b)=>{
   const c =a+b
   return c
}

解构赋值

JavaScript支持解构赋值,案例如下:

let {web:webSiteName,url:webUrl}  ={web:"猫猫教程",url:"http://www.maomao365.com"};
document.write(webSiteName+" ");
document.write(webUrl); 

以上代码会输出:

猫猫教程 http://www.maomao365.com
上一篇 下一篇

猜你喜欢

热点阅读