数据和判定(二)------运算符

简介:
运算符
JavaScript有许多的运算符,你可以在你的程序中用来操作数据;你或许会从数学的角度认识它们。表 2-2 介绍了一些最常用的运算符。
2-2 JavaScript 运算符
运算符
它的用途
+
对两个数进行加法运算或者连接两个字符串。
-
从第一个数中减去第二个数。
*
对两个数进行乘法运算。
/
第一个数除以第二个数。
%
获得除法的余数。举例来说,98 % 10 = 8
--
数字递减1:只有在变量中有效,我们稍后会提到。
++
数字递增1:只有在变量中有效,我们稍后会提到。
 
下面是它们的应用:
<html>
<body>
<script type="text/javascript">
document.write( 1 - 1 );
document.write( "<br />" );
document.write( 1 + 1 );
document.write( "<br />" );
document.write( 2 * 2 );
document.write( "<br />" );
document.write( 12 / 2 );
document.write( "<br />" );
document.write( 1 + 2 * 3 );
document.write( "<br />" );
document.write( 98 % 10 );
</script>
</body>
</html>
 
你会获得如下的输出:
                                                                                
 
0
2
4
6
7
8
                                                                                
 
跟数学一样,JavaScript也定义了一些运算优先级。乘法比加法的优先级要高,所以这个计算1 + 2 * 3 会按如下的步骤执行:
2 * 3 = 6
6 + 1 = 7
所有的运算符都有一个优先级顺序。乘法、除法和求余的优先级相同,因此当它们出现在同一个等式中的时候,会按照从左到右的顺序执行。试着计算一下:
2 * 10 / 5%3
计算结果是1,因为计算的顺序是简单的从左到右来读的:
2 * 10 = 20
20 / 5 = 4
4%3 = 1
加法和减法同样也拥有相同的优先级。
你可以使用括号来给某部分计算一个更高的优先级。例如,你可以按照如下的方式,把11相加,然后乘以5
(1 + 1) * 5
计算的结果会是10,但没有括号的话结果就会是6。实际上,使用括号是个非常好的主意,即使它们不是必需的时候,因为它们可以帮助我们使执行的顺序变得清晰。
如果你使用不止一对括号,JavaScript会简单的按照从左到右的顺序执行,或者你使用了内部括号,则按照从内到外的顺序执行:
document.write( ( 1 + 1 ) * 5 * ( 2 + 3 ) );
下面是这个计算的优先执行顺序:
(1 + 1) = 2
(2 + 3) = 5
2 * 5 = 10
10 * 5 = 50
正如我们看到的,JavaScript的加法运算符把这些值加到一起。它如何处理这两个值取决于你使用的数据类型,这个+运算符会把它们加到一起。 然而,如果你处理得数据其中有一个数据类型是字符串(使用分隔符来表示的),这两个值会被连接在一起。试一下这个:
<html>
<body>
<script type = "text/javascript">
document.write( 'Java' + 'Script' );
document.write( 1 + 1 );
document.write( 1 + '1' );
</script>
</body>
</html>
能够对字符串使用加法运算是非常方便的(这种情况下也叫连接运算符),但如果你处理的其中一个值正好与你期望的数据类型不同,它也会产生意想不到的结果。我们稍后会看一些这样的简单例子,并且分解他们。
如果你处理的文本literal)值都如我们目前所使用的那样,那么它不会有什么大问题。可是,你在程序中需要处理的很多数据都是用户输入或者脚本产生的,因此我们没有办法预先准确的知道你将要处理的是什么值。这就是变量variables)需要引入的地方。变量是你脚本中的数据占位符,它们对JavaScript来说非常重要。









本文转自 牛海彬 51CTO博客,原文链接:http://blog.51cto.com/newhappy/76836,如需转载请自行联系原作者
目录
相关文章
|
6天前
|
JavaScript 前端开发 Java
运算符分为哪几类? 哪些运算符常用作判断?简述运算符的优先级?
运算符分为哪几类? 哪些运算符常用作判断?简述运算符的优先级?
|
3月前
|
编译器 C++ 索引
C learning_13 操作符前篇(条件操作符、 逗号表达式、 下标引用、函数调用和结构成员、 表达式求值)
C learning_13 操作符前篇(条件操作符、 逗号表达式、 下标引用、函数调用和结构成员、 表达式求值)
|
8月前
|
Java
高效实现区间条件过滤:Java字符串转换为条件语句
高效实现区间条件过滤:Java字符串转换为条件语句
45 0
|
9月前
|
编译器 C语言 C++
学C的第十六天【操作符详解:9. 条件操作符;10. 逗号表达式;11. 下标引用,函数调用和结构函数;12.表达式求值:整型提升、算术转换、操作符的属性;练习:使用函数完成整型函数的打印、元素逆置】-2
12.表达式求值 1. 表达式求值的顺序一部分是由操作符的优先级和结合性决定。 2. 有些表达式的操作数在求值的过程中可能需要转换为其它类型。
|
10月前
|
安全
运算符:指数-链判断-Null判断-逻辑赋值
运算符:指数-链判断-Null判断-逻辑赋值
52 0
|
11月前
|
存储 Unix 编译器
表达式求值过程中会发生哪些隐藏的变化?求值顺序又由什么决定?——详解C表达式求值中的隐式类型转换,算术转换问题,以及操作符的属性
表达式求值过程中会发生哪些隐藏的变化?求值顺序又由什么决定?——详解C表达式求值中的隐式类型转换,算术转换问题,以及操作符的属性
113 0
|
Serverless
宏程序变量运算规则
宏程序变量运算规则
|
存储 安全 PHP
类型判定| 学习笔记
快速学习类型判定。
63 0
7-16 求符合给定条件的整数集 (15 分)
7-16 求符合给定条件的整数集 (15 分)
84 0

热门文章

最新文章