js运算符

算数运算符
+ - * / % (加、减、乘、除求余)
var a = 3, b = 2;
document.write(a + b);
document.write(a - b);
document.write(a * b);
document.write(a / b);
document.write(a % b);

1. 如果+号左边只有一个值 解析的结果是正号
2. 如果两边都是数值(Number)类型 则是+号运算符
3. +号的左右如果有一个数据是字符串数据类型的话 那么这个+号会被解析成连接符
数值相加,字符相连

赋值运算符 =

var a = 1; 把 1 赋值给a

一元运算符
eg:a++ a-- --a ++a
做自增自减的运算符 ++ --
注: ++a ++前置 先自增,后运算(使用)
a++ ++后置 先运算(使用) 后自增
eg: var a = 2,b = 3;

document.write(++a);
document.write(b++);

二元运算符:符号的左右有两个数据
eg: a + b , a - b
 
三元运算符
语法 : 条件 ? 表达式1 : 表达式2; 条件成立时返回表达式1 否则返回表达式2
eg: age >= 18 ? console.log('你成年了') : console.log('你未成年');

eg:使用三元运算符求三个数的最小值
  var n = prompt('请输入第一个数字');
  var m = prompt('请输入第二个数字');
  var s = prompt('请输入第三个数字');
  (n > m) ? (m > s ? s : m) : (n > s ? s : n);



逻辑运算符
&& || ! (与、或、非)

&& 逻辑与
eg: 条件1 && 条件2 只有当两个条件都成立时才成立

|| 逻辑或
eg: 条件1 || 条件2 只要有一个条件成立时就成立

! 逻辑非
eg: !条件 取反


比较运算符
>, <, >=, <=, ==, ===, !=, !== (大于, 小于, 大于等于, 小于等于, 等于, 全等于, 不等于, 不全等)
一个 = 为赋值,两个 == 为等于只看值是否相等不看类型, 三个 === 全等于优先比较类型是否相等 再比较值
!=不等于, 只比较内容
!==不全等,比较类型和值 优先比较类型

注:比较运算符的结果是布尔类型 要么true,要么false

比较运算符的特殊情况
var a = 3,b = '5';
console.log(a>b); 结果为false
console.log(a<b); 结构为true
当数字和字符串比较时,字符串数字会隐式转换为数字去比较
当字符串字母和字符串字母比较时,会用每一个字符的ASCII码去比较
当汉字来比较时用汉字的unicode编码值来比较
当布尔值来比较时会转换成数字 0(false) 和 1 (true)
当与NAN比较时都是false
原文地址:https://www.cnblogs.com/lzfj/p/11461992.html