运算符总览
括号
|
(x) [x]
|
中括号只用于指明数组的下标
|
求反,自加减
|
-x
|
返回 x 的相反数
|
!x
|
返回与 x (布尔值)相反的布尔值
|
x++
|
x 值加 1,但仍返回原来的 x 值
|
x--
|
x 值减 1,但仍返回原来的 x 值
|
++x
|
x 值加 1,返回后来的 x 值
|
--x
|
x 值减 1,返回后来的 x 值
|
乘、除
|
x*y
|
返回 x 乘以 y 的值
|
x/y
|
返回 x 除以 y 的值
|
x%y
|
返回 x 与 y 的模(x 除以y 的余数)
|
加、减
|
x+y
|
返回 x 加 y 的值
|
x-y
|
返回 x 减 y 的值
|
关系运算
|
x<y x<=y x>=y x>y
|
当符合条件时返回 true 值,否则返回 false 值
|
等于、 不等于
|
x==y
|
当 x 等于 y 时返回 true 值,否则返回 false 值
|
x!=y
|
当 x 不等于 y 时返回 true 值,否则返回 false 值
|
恒等
|
X===y
|
X与y数据类型相等且值相等返回true,否则返回false
|
|
位与
|
x&y
|
当两个数位同时为 1 时,返回的数据的当前数位为 1,其他情况都为 0
|
位异或
|
x^y
|
两个数位中有且只有一个为 0 时,返回 0,否则返回 1
|
位或
|
x|y
|
两个数位中只要有一个为 1,则返回 1;当两个数位都为零时才返回零
|
|
逻辑与
|
x&&y
|
当 x 和 y 同时为 true 时返回 true,否则返回 false
|
逻辑或
|
x||y
|
当 x 和 y 任意一个为 true 时返回 true,当两者同时为 false 时返回 false
|
|
条件
|
c?x:y
|
当条件 c 为 true 时返回 x 的值(执行 x 语句),否则返回 y 的值(执行 y 语句)
|
赋值、 复合运算
|
x=y
|
把 y 的值赋给 x,返回所赋的值
|
x+=y x-=y x*=y x/=y x%=y
|
x 与 y 相加/减/乘/除/求余,所得结果赋给 x,并返回 x 赋值后
|
其中有三个需要注意:
一、==(相等) 与 ===(恒等)的区别
简单的说,相等判断会进行数据类型转换;而===不转换,必须是数据类型一致且值相等;
转换过程与一般语言的顺序一致;基本都是boolean->int->double->string
例如:
<html>
<head>
<title>test</title>
<script type="text/javascript">
function test() {
alert(1 == "1");//显示 true
alert(1 == true);//显示 true
alert(0 == false);//显示 true
alert("1" === "1");//显示 true
alert(1 === "1");//显示 false
alert(1 === true);//显示 false
}
</script>
</head>
<body onload="test()"></body>
</html>
二、另一条可是这样理解,有布尔表达式运算的时候,如果变量不是布尔类型,会用变量的值构造Boolean类型,然后进行运算。
Boolean类型构造原则:值为 0、-0、null、""、false、undefined 或 NaN,则将其变为 false。否则设置为 true(即使参数是字符串 "false")。
例如:
<html>
<head>
<title>test</title>
<script type="text/javascript">
function test() {
alert(!undefined);//true
alert(!'');//true
alert(!1);//false
alert(!0);//true
alert(true == 1);//true
alert(false == "false");//false
if (undefined) {
alert(1);
} else {
alert(2);//alert结果为2
}
}
</script>
</head>
<body onload="test()"></body>
</html>
三、或运算符还可以这么用(在Jquery和Extjs源码中常见到),用来给undefined的变量赋一个默认值。目前还没有找到关于此用法的官方语法解释。例如:
<html>
<head>
<title>test</title>
<script type="text/javascript">
function test() {
var param;//这里其实是undefined
param = param||'hello world!';
alert(param);//显示"hello world!"
if (undefined||'') {
alert(1);
} else {
alert(2);//显示的是2
}
/**
* 本人分析:
* 首先'或'运算符将param转为boolean,因为是undefined,因此转为false
* 第一个值为false后,或运算符就判断第二个表达式的值,又将string转为true,如果是0/'' 等就返回false;
* 不管第二个被转换为true还是false,总之都要返回第二个表达式的值;并且返回的是原数据类型
* 以此来达到默认值的效果
*/
}
</script>
</head>
<body onload="test()"></body>
</html>
分享到:
相关推荐
### JavaScript语言基础知识点详解 #### 1. 变量定义 **JavaScript** 是一种广泛使用的脚本语言,常用于Web前端开发。对于初学者来说,理解变量定义的基础知识至关重要。 - **变量命名规则**: - 变量名区分大小...
1. **JavaScript基础**:JavaScript语言的基础包括变量、数据类型、运算符、流程控制(条件语句、循环语句)、函数等。学习JavaScript首先要掌握这些基本语法,为后续的高级特性学习打下坚实基础。 2. **DOM操作**...
在深入探讨JavaScript中的...通过以上详细解析,我们可以看到JavaScript中的运算符非常强大和灵活,能够满足各种计算需求,是构建复杂逻辑和算法的基础。掌握这些运算符对于任何JavaScript开发者来说都是至关重要的。
本文将基于“JavaScript语言基础知识点总结十张图”这一主题,深入探讨JavaScript的基础概念、语法特性以及核心知识点。 1. **变量与数据类型** JavaScript有七种数据类型:Undefined、Null、Boolean、Number、...
JavaScript是一种广泛使用的前端脚本语言,它的运算符系统非常完备,支持算术运算符、逻辑运算符、位运算符、赋值运算符等,以及一些特殊的运算符。下面我们详细介绍一下这些运算符。 首先,算术运算符是最基本的...
《JAVASCRIPT语言精髓与编程实践》是周爱民撰写的一本深入解析JavaScript编程的著作,这本书旨在帮助读者理解JavaScript的核心概念,并将其应用于实际的编程实践中。JavaScript,作为全球最广泛使用的脚本语言,是...
适合人群:适合初学者和有一定基础的开发者,希望系统学习JavaScript语言的人群。 使用场景及目标:①掌握JavaScript的基础语法和常用编程概念;②熟悉JavaScript中的函数、对象和数组的操作;③理解面向对象编程的...
这篇总结涵盖了JavaScript语言的基础知识,帮助初学者快速上手并深入理解这门强大的脚本语言。 首先,我们来看“JavaScript 数据类型”。JavaScript有七种数据类型:Undefined、Null、Boolean、Number、BigInt、...
"Javascript语言参考大全"很可能是一份全面涵盖JavaScript语法、对象、函数、事件处理、DOM操作等核心概念的文档。这份大全可能包含了从基础语法如变量、数据类型、运算符,到高级特性如闭包、原型链、异步编程等...
JavaScript语言基础 - **变量与数据类型**:介绍JavaScript中的基本数据类型(如字符串、数字、布尔值)以及复合数据类型(如数组、对象)。 - **操作符与表达式**:讲解JavaScript中的各种操作符,包括算术运算符...
2. **字母顺序的关键字列表**:关键字是JavaScript语言中预定义的保留词汇,如`break`, `case`, `catch`, `class`, `const`, `continue`, `debugger`, `default`, `delete`, `do`, `else`, `enum`, `export`, `...
在JavaScript学习路径中,运算符是理解语言基础的关键部分。掌握这些运算符及其行为,可以帮助开发者编写更准确和高效的代码。在后续的学习中,还将涉及逻辑运算符、位运算符、对象运算符和其他一些高级话题,如函数...
在《JavaScript完全入门_04__JavaScript的数据类型和运算符.pdf》这份资料中,主要介绍了JavaScript中的基础概念,包括语法规则、基本数据类型、变量、表达式与运算符等内容。通过本篇文章,我们将深入探讨这些知识...
1. **基础语法**:JavaScript的基础语法类似于C++和Java,包括变量声明(var、let、const)、数据类型(字符串、数字、布尔值、null、undefined、对象、数组、Symbol等)、运算符(算术、比较、逻辑、赋值、三元)、...
"JavaScript语言精粹.修订版",即《Javascript: The Good Parts》,是由知名的计算机科学家Douglas Crockford所著,这本书深入探讨了JavaScript的核心概念和最佳实践,为开发者提供了宝贵的洞察力。 书中的内容主要...
JavaScript是一种广泛应用于Web开发的轻量级解释性脚本语言,它嵌入在HTML文档中,由支持JavaScript的浏览器解析并...理解JavaScript的基础知识,包括语法、数据类型、运算符和函数,对于任何Web开发者来说都至关重要。
以下是对JavaScript语言基础知识点的详细总结: 1. 变量与数据类型: JavaScript 支持七种数据类型:Undefined、Null、Boolean、Number、BigInt、String 和 Symbol,以及一种复合类型——Object。变量声明使用 `...
JavaScript,也被称为JS,是一种广泛应用于网页和网络应用的脚本语言,主要在客户端运行,为用户提供动态交互体验。它是Web开发三大核心技术之一,与HTML和CSS共同构建了互联网的基石。JavaScript的基础知识是所有...
1. **基础语法**:包括变量、数据类型、运算符、流程控制语句(如if-else、switch、for循环和while循环)以及函数定义和调用。 2. **作用域和闭包**:讲解了如何管理变量的作用域,以及闭包如何为JavaScript提供...
JavaScript是Web开发中不可或缺的一部分,它是一种轻量级的、解释型的编程语言,主要用于网页和网络应用。本文将深入探讨JavaScript的基础知识点,通过思维导图的形式帮助学习者更好地理解和记忆。 1. 变量与数据...