网站专题BANNER

JavaScrip 前端/后台开发人员必须要掌握的编程技能

发表日期:2021-10-11 21:01:00 文章编辑:洛壹网络 文章来源:深圳网站制作

在每年最受欢迎的编程语言排行榜中,javascript一直处于领先地位,而2021年,它依然会是最受欢迎的编程语言。


作为最受欢迎的语言,javascript受到了前后端开发人员的喜爱,它不仅可以作为前端框架来使用,而且它还可以被用于后端服务,人们经常听到的一句话就是,能用javascript解决的问题,最后都会用javascript来解决。今天我们就来简单介绍一下JavaScript这门前端后台都爱的编程语言。


JavaScript是一门前端/后台开发编程语言,但凡是编程语言,其在基本语法上都是大同小异的。


一、js中的运算符


1、算术运算符

比如加减乘除,取模,自增自减这些,和Java都是一样的。

但js中的运算也有和Java的不同之处;



变量之间的运算

在js中,不同数据类型之间的变量也能参与运算。

100和true相加结果竟然是101,这个在Java中会直接报错的,因为不确定结果是什么数据类型。

所以在js中,true参与运算时就相当于数字1,同理false就相当于数字0,null也是相当于数字0


undefined类型参与运算

变量c没有定义,所以是未定义类型,当其参与运算时得到的结果为NaN。

未定义类型和非字符串任意类型运算时,得到的结果都是NaN。

NaN,全称not a number,也就是不是一个数字。


string类型参与运算

这个和Java中倒是一样,任意类型和string类型相加时,结果都是拼接。

但是String在Java里面是引用数据类型,而在js里面是基本(原始)数据类型。


2、逻辑运算

关于逻辑运算符:与(&&)、或(||)、非(!)和Java中是一样的。

但在js中的逻辑判断与Java有些不同:



布尔表达式

这个也就和Java中一样,逻辑判断为true时结果为真,逻辑判断为false时结果为假。


数字作为布尔表达式

在js里面,数字也有自己的逻辑判断:

当数字不为0时,逻辑判断为true;

当数字为0时,逻辑判断为false。


字符串作为布尔表达式

当字符串不为空时,逻辑判断为true;

当字符串为空时,逻辑判断为false。

此外,未定义数据类型逻辑判断也为false,在算术运算中的NaN作为逻辑判断时也为false。



3、比较运算符

其中js中的赋值运算符(=、+=、-=、*=、/=、%=)和Java中一样。

比较运算符(==、!=、=)也和Java中一样,但js有两个个特殊的比较运算符:


字符串与数字比较

在js中,字符串也能参与比较,会先将其转换成数字再进行比较。

==,等于,比较的是值是否相等。

===,恒等于,比较的是值和类型均相等。


null与未定义比较

同样的道理,它们的值相等,都为null,但是类型不一样,所以不恒等于。


4、三目运算符

也就是Java中的三元运算符。


二、js中的函数


1、函数定义

js中的函数其实也就是Java中的方法。



Java中的方法

做一个回顾,Java方法格式:修饰符+返回值+方法名+(参数列表)+;

其中参数列表中要明确数据类型。


js中的函数

js函数格式:fuction+方法名(参数列表){};

js中不仅没有修饰符,连返回值都没有,并且参数列表的数据类型不用明确。

由此可以看出:js的语法相对于Java而言较为随意,不像Java那么严谨,但确实简便了很多,方便学习。


2、实参和形参

实参:调用函数时的参数(传入的具体数值)。

形参:定义函数时的参数(自定义的变量)。

Java中形参与实参要明确保证一致(数量、数据类型都要保证一致)

但是js中可以不一致,我们逐一分析:


实参与形参数量不一致

实参与形参的关系相当于将实参的值赋给形参。

当实参比形参要少时:a=1;b=2,但是c未定义。

在js中任何数据与未定义的变量相加都是NaN。

当实参和形参一样或者多时,结果没有影响,多的实参不参与运算即可。


形参和方法体中的变量不一致

如果方法体中的变量要少,有几个就用几个。

如果方法体中的变量要多,多了一个形参中没有的变量d,则无法运行。

这个Java中倒是有一定的相似之处。


3、参数arguments

事实上在js中有一个专门的数组arguments,用来接收调用时的实际参数:

js中的数组是可变的,所以可以使用这种方式来接受,当然也可以使用for循环来处理。

不过要注意的是,js中可没有增强for循环。

老实说,对于arguments这个概念,其实也就相当于是实际参数,知道在js中有它的存在即可。

我个人对于实参和形参的理解,就是将实参赋值给形参再参与运算,这样方便记忆也好理解。


4、返回值和方法重载


返回值

js在定义函数时是不用说明返回值的,如果有返回值,直接return即可。


方法(函数)重载

在Java中是有方法重载(同名不同参)

但是在js中是没有方法重载的。

这也好理解,在Java中参数类型不同,个数不同即代表不同的参数。

但是在js中参数类型都没有明确定义,所以也没法区分参数不同,并且实参个数与形参个数没有关系。

其中,js代码是从上到下执行的,同名函数,后面的函数会覆盖前面的函数。


5、局部变量和全局变量


函数内测试局部变量

函数内部,局部变量和全局变量都可以访问。


函数外测试全局变量

在函数外部,局部变量是不能被访问的,但是全局变量可以访问。


另一个script标签

和函数外部一样的道理,通过我们可以得出结论:变量c是一个全局变量。


事实上,当局部变量省略了var的时候,会变成全局变量。

也就是说实际上变量c省略了var,就相当于默认在外部定义了var c,再在函数内赋值。

当然其前提是该变量没有在函数内被定义,如果变量c在函数内定义过了,那它就是个局部变量。


JavaScrip 前端/后台开发人员必须要掌握的编程技能


相关内容
HTTP(超文本传输协议)的六种请求方法介绍

超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。

web开发人员需要掌握的编程技能有哪些?

web开发所需的编程知识随着时间的推移而不同,这取决于你想要做什么。那么web前端开发最新的编程技能和知识有哪些呢?

浅谈弹性布局在网站建设过程中的奇妙之处

熟练掌握CSS弹性布局的话,无论是页面的整体设计还是局部内容的布局,都能起到事半功倍的效果,今天洛壹网络简单为大家讲解一下CSS弹性布局的奇妙之处。

网站建设过程中,我们要了解域名的重要性和能为我们带来什么

在日常的网络建设过程中,还是有相当一部分的客户,不明白域名的重要性以及域名能为企业带来什么样的便利,那么今天洛壹网络就来解释一下,什么是域名?

带你揭开BFC神秘的面纱

想要了解BFC的规则,前提必须是熟悉前端网页的多种布局手段,例如盒的显示模式display,三种布局手段标准流(normal)、浮动流(float)、定位流(position)等。今天洛壹网络来为大家解析一下BFC,希望对各位新老朋友有所帮助。

新手前端指南:一小时搞懂 CSS 属性应用

在 CSS 中,字体属性和文本属性是分开的,这是很容易搞混的东西。字体属性用的是 font 属性,而在 font 下还包含若干常用的属性

前端中的布局方式有哪些?

在web前端开发中,存在有很多的布局模式,这些布局模式各有各的优势,今天咱们就在说说,前端中的布局方式有哪些

浮动布局时,中间出现一块空白

浮动布局时,中间出现一块空白

我们
定制
咨询
联系
在线咨询
您的浏览器版本太低

请升级您的浏览器: Internet Explorer11 或以下浏览器: Firefox  /  Chrome  /  360极速浏览器