-
运算符
基本的运算符允许我们对值进行操作。
// 字符串拼接
var foo = "hello";
var bar = "world";
console.log( foo + " " + bar ); // "hello world"
// 乘法和除法
2 * 3;
2 / 3;
// 递增和递减
var i = 1;
console.log( ++i ); // 2 前置自增
console.log( i ); // 2
var i = 1;
console.log( i++ ); // 1 后置自增
console.log( i ); // 2
|
-
数字与字符串的运算符
在JavaScript中,有可能会意外的出现数字与字符串做运算。数字与字符串直接运算时会被当做为字符串运算,当使用Number构造函数时,会把参数转换成数字类型,再进行数字运算。
// 加法运算和字符串拼接
var foo = 1;
var bar = "2";
console.log( foo + bar ); // 12 字符串拼接
// 字符串转化成数字
var foo = 1;
var bar = "2";
console.log( foo + Number(bar) ); // 3 加法运算
|
-
逻辑运算符
逻辑运算是使用&&和||进行运算的。
// 逻辑 AND(且) 和 OR(或) 运算
var foo = 1;
var bar = 0;
var baz = 2;
// returns 1, true
foo || bar;
// returns 1, true
bar || foo;
// returns 0, false
foo && bar;
// returns 2, true
foo && baz;
// returns 1, true
baz && foo;
|
你可能有时候可以看见有的程序员使用这些逻辑运算进行流程控制,而不是if语句。这样的写法虽然很简洁优雅但是不易新手阅读。
// foo为真的时候执行doSomething函数
foo && doSomething( foo );
// 如果baz是真的则设置bar的值为baz的值
// 否则,设置bar的值为createBar()的返回值
var bar = baz || createBar();
|
-
比较运算符
比较运算符允许你对2个操作数进行比较。
// 比较运算
var foo = 1;
var bar = 0;
var baz = "1";
var bim = 2;
foo == bar; // false
foo != bar; // true
foo == baz; // true; 需要注意的是2者的类型是不同的
foo === baz; // false
foo !== baz; // true
foo === parseInt( baz ); // true
foo > bim; // false
bim > baz; // true
foo <= baz; // true
|
-
运算符速查表
-
- 算术运算符
-
- 加法:+
- 减法:-
- 乘法:*
- 除法:/
- 取模:%
- 递增:++
- 递减:--
- 赋值运算符
-
- 赋值:=
- 加法赋值:+=
- 减法赋值:-=
- 乘法赋值:*=
- 除法赋值:/=
- 取模赋值:%=
- 比较运算符
-
- 值等于:==
- 值不等于:!=
- 全等于:===
- 全不等于:!==
- 大于:>
- 小于:<
- 大于等于:>=
- 小于等于:<=
- 逻辑(布尔)运算符
-
- 与:&&
- 或:??
- 非:!
- 字符串运算符
- 使用"+"运算符连接字符串,这个过程称之为字符串连接