JavaScript运算符允许你改变一个变量的值。你已经熟悉了用于赋值给变量的=运算符。JavaScript提供了几种不同的运算符,它们可以划分为两大类:算数运算符和赋值运算符。

  1、算数运算符

  你可以使用算数运算符来执行变量和直接值之间的操作。具体可见下表:

JavaScript的算数运算符,其结果基于y = 4最初值

运 算 符 说 明 示 例 x 结果
+

x=y+5

x=y+"5"

x="Four"+y+"4"

9

"45"

"Four44"

- x=y-2 2
++ 递增

x=y++

x=++y

4

5

-- 递减

x=y--

x=--y

4

3

* x=y*4 16
/ x=10/y 2.5
% 模(除法的取余) x=y%3 1

  

  注意:你也可以使用+运算符来连接字符串或将字符串和数值加在一起。这可以快速连接字符串,以及将数值数据添加到输出字符串。

  2、赋值运算符

  你可以使用赋值运算符把值赋给一个变量。除了=运算符,还有几种不同的形式,可以让你在给一个值赋值时操作数据。

JavaScript的赋值运算符,其结果基于x=10的初始值

运 算 符 示 例 相当于算数运算符 x 结果
= x=5 x=5 5
+= x+=5 x=x+5 15
-= x-=5 x=x-5 5
*= x*=5 x=x*5 50
/= x/=5 x=x/5 2
%= x%=5 x=x%5 0

  3、运用比较和条件运算符

  使用条件语句是一种把逻辑应用到你的应用程序的方法,例如,某些代码只有在正确的条件下才能执行。你可以通过对变量的值应用比较逻辑来做到这一点。以下各节描述了可在

JavaScript中使用的比较,以及如何将它们应用在条件语句中。

  比较运算符

  比较运算符计算两部分数据,如果计算记过是正确的,则返回true;如果计算结果是不正确的,则返回false。比较运算符对运算符左边的值和右边的值执行比较。

JavaScript的比较运算,其结果基于x=10的初始值

运 算 符 说 明 示 例 结 果
== 等于(只是值)

x==8

x==10

false

true

=== 值和类型都相等

x===10

x==="10"

true

false

!= 不等于 x!=5 true
!== 值和类型都不相等

x!=="10"

x!==10

true

false

> 大于 x>5 true
>= 大于或等于 x>=10 true
< 小于 x<5

false

<= 小于或等于 x<=10

true

  你可以使用逻辑运算符和标准圆括弧号链接多重比较。下表显示了逻辑运算符的列表,以及如何使用它们将比较链接在一起。

JavaScript的比较运算,其结果基于x=10,y=5的初始值

运 算 符 说 明 示 例 结 果
&& 并且

(x==10 && y==5)

(x==10 && y>x)

true

false

|| 或者

(x>=10 || y>x)

(x<10 && y>x)

true

false

!

!(x==y)

!(x>y)

true

false

  混合

(x>=10 && y<x || x==y)

((x<y || x>=10) && y>=5)

(!(x==y) && y>=10)

ture

true

false

  使用if语句

  if语句可以让你基于一个比较计算来分离代码执行。下面的代码行显示在()中的条件运算符和如果条件计算结果为true要执行在{}中的代码:

    if(x==5){

      do_something();

    }

  除了只在if语句块中执行的代码外,你还可以指定一个else块,它仅当条件是false时才执行。例如:

    if(x==5){

      do_something;

    }else{

      do_something_else;

    }

  你也可以将if语句链接在一起。要做到这一点,添加一个条件语句以及一个else语句,如下例所示:

    if(x<5){

      do_something;

    }else if(x<10){

      do_something_else;

    }else{

      do_nothing;

    }

  实现switch语句

  另一种类型的条件逻辑是switch语句。switch语句使你可以计算一个表达式,然后基于该值,执行代码的众多不同的部分之一。

  switch语句的语法是:

    switch(表达式){

      case value1:

        <要执行的代码>

        break;

      case value2:

        <要执行的代码>

         break;

      default:

        <如果不是value1也不是value2要执行的代码>

    }

  其执行的原理是:switch语句完全计算表达式,并得到一个值。该值可以是字符串、数值、布尔值、甚至是一个对象。然后再使用case语句指定的每个值与switch表达式做比较。如果值匹配,则执行case语句中的代码。如果没有匹配的值,那么执行default(默认)的代码。

  注意:

  通常每个case语句都在最后包括break命令,表示从switch语句中断。如果没有找到break,那么代码继续执行下一个case语句。

JavaScript基础——使用运算符的更多相关文章

  1. JavaScript基础之运算符及全面的运算符优先级总结

    算数运算符: 加+,减—,乘*,除/,求余%,加加++,减减——, 加减乘除求余运算与数学上的用法完全一样. 不过,加号+还有连接字符串的作用,其他运算符还可以将字符串数字转换成数值型,参见JavaS ...

  2. 【javascript基础】运算符优先级

    优先级 运算类型 关联性 运算符 1 成员运算符 从左到右 . [] new 从右到左 new 2 函数调用运算符 从左到右 () 3 自增运算符 n/a ++ 自减运算符 n/a -- 4 逻辑非运 ...

  3. 第2天:JavaScript基础(运算符、案例、循环、冒泡以及prompt提示输入框)

    一元运算在前在后的区别 加加 var num1 = 10; //++在后面 先参与运算 再自加1 var sum1 = num1++ +10; console.log("sum1的值:&qu ...

  4. javascript基础系列(入门前须知)

    -----------------------小历史---------------------------- javascript与java是两种语言,他们的创作公司不同,JavaScript当时是借 ...

  5. JavaScript基础&实战(2)js中的强制类型转换、运算符、关系运算符、逻辑运算符、条件运算符

    文章目录 1.强制类型转换Number 1.1 代码 1.2 测试结果 2.进制表示 2.1 代码 2.2 测试结果 3.强制类型转换为Boolea 3.1 代码 3.2 测试结果 4.运算符 4.1 ...

  6. JavaScript基础之注释,类型,输出,运算符

    JavaScript是一种依托于网页为宿主的脚本语言,JavaScript是一门非常强大的语言,尤其对于web端,用途广泛,好用,偏向于操作网页,可以操作网页中的任何一个元素,JavaScript的缺 ...

  7. JavaScript基础

    JavaScript基础 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处 ...

  8. 前端之JavaScript基础

    前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...

  9. JavaScript 基础回顾——对象

    JavaScript是基于对象的解释性语言,全部数据都是对象.在 JavaScript 中并没有 class 的概念,但是可以通过对象和类的模拟来实现面向对象编程. 1.对象 在JavaScript中 ...

随机推荐

  1. iOS开发——项目需求-快速回到当前界面的顶部

    利用UIWindow实现快速到达顶部 如下图,在状态栏添加一个没有颜色的UIWindow(里面添加一个按钮),实现点击这个按钮时能快速的回到当前界面的顶部 核心代码 一.利用UIWindow实现到达顶 ...

  2. 跟着百度学PHP[4]OOP面对对象编程-10-静态关键字static

    使用static关键字可以将类中的成员标识为静态的,既可以用来标识成员属性,也可以用来标识成员方法. 以Person类为例,如果在person类中有一个“$country=’china’”的成员属性, ...

  3. js清空array数组的方法

    方式1,splice Js代码   ,,,}; ary.length = ; Java中会报错,编译通不过. 而JS中则可以,且将数组清空了,如 Js代码   var ary = [1,2,3,4]; ...

  4. mysql 同步

    http://dev.mysql.com/doc/refman/5.5/en/replication-howto.html http://blog.csdn.net/mycwq/article/det ...

  5. LINUX优化得很好的sysctl.conf配置

    最近找了个不错的sysctl.conf的优化参数,在网站响应上已经算不错了的,time超时连接据说几乎为0了.  系统:centos 5.x sysctl.conf配置参数: kernel.msgmn ...

  6. phpstorm+Xdebug断点调试PHP

    运行环境: PHPSTORM版本 : 8.0.1 PHP版本 : 5.6.2 xdebug版本:php_xdebug-2.2.5-5.6-vc11-x86_64.dll ps : php版本和xdeb ...

  7. 查找问题的利器 - Git Blame

    原文: http://gitbook.liuhui998.com/5_5.html  如果你要查看文件的每个部分是谁修改的, 那么 git blame 就是不二选择. 只要运行'git blame [ ...

  8. POJ 1503

    http://poj.org/problem?id=1503 对于这个题我也是醉了,因为最开始是有学长和我们说过这个题目的,我以为我记得题目是什么意思,也就没看题目,结果按案例去理解题意,结果WA了一 ...

  9. ACM/ICPC 之 最短路径-dijkstra范例(ZOJ2750-POJ1135(ZOJ1298))

    最短路经典算法-dijkstra范例(两道),第一道是裸的dijkstra,第二道需要枚举所有边已找到可能的情况. ZOJ2750-Idiomatic Phrases Game 题意:见Code 题解 ...

  10. ACM/ICPC 之 Prim范例(ZOJ1586-POJ1789(ZOJ2158))

    两道Prim解法范例题型,简单的裸Prim,且两题相较以边为重心的Kruskal解法而言更适合以点为重心扩展的Prim解法. ZOJ1586-QS Network 题意:见Code 题解:直接的MST ...