JavaScript学习笔记

算术运算符

// + - * / %(取余或求模)

var ben = 200; // 赌本:200元
var quan = 30; // 打30圈
var money = 5; // 打一圈赢5元

console.log('你现在一共有' + (ben + quan * money) + 'rmb' );

var num = 30;
// 在JS中可以对整型和浮点型进行取余
console.log(num%7); // 2.5
num = -30;
console.log(num%7); // -2.5

num = 30;
// 整型乘以整型得到整型
console.log(quan*money); // 150

// 整型相除可能得到整型
console.log(num/money); // 6

// 除不尽的时候得到的是浮点型
console.log(num/7); // 4.285714285714286

// 浮点型相除,也有可能得到整型
var num = 4.8;
console.log(num/1.2); // 4

// 除以零,在编程语言中,不止js都要求除数不能为零
console.log(num/0); // Infinity

条件运算符

// >,<,==,!=,===,!==,>=,<=
// 条件运算符得到的结果是布尔值
if(3 > 2) { 
	console.log("3果然大于2");
}

// 判断两人年龄
var woman = 32;
var boy = 18;

if((woman - boy) >= 8) {
	console.log('嫩牛吃老草');
}else {
	console.log('凑和');
}

if((woman - boy) == 3) {
	console.log('女大3抱金砖');
}

// === 全等于:不仅值相等,而且类型相等

var real = true;
var res = 1;
if(res) {
	console.log("1也能出来?");
}

if(real == res) { // true 等于 1,
	console.log("1和true相等");
} else {
	console.log("1和true不相等");
}


if(real === res) { // true 不全等于 1
	console.log("1和true值相等,类型也相等");
} else {
	console.log("1和true值相等,类型不相等");
}

// 因此:1 == true,但是 1 !== true;

// + 号运算符,如果有一个操作数是字符串,那么最终得到的结果就是字符串。

赋值运算符

赋值运算就是把 = 右侧的值或表达式的值赋值给左侧的变量。

// 变量名 = 变量名 + - * / % 值
// 等价于
// 变量名 + - * / % = 值

a = a + 1; ==> a += 1;

逻辑运算符

逻辑与 &&,运算符两端同时成立(为真),整个运算结果才为真,否则,运算结果为假.
逻辑或 ||,运算符两端同时为假时,运算结果才为假,否则运算结果为真.
逻辑非 !,逻辑否定,黑白颠倒

逻辑与和逻辑或的短路现象:

var house = 2;
var car = 1;

// 表达式判断到house的时候,整个结果就已经可以判断完毕。
// 所以表达式的运算结果是 house 的值
var res = house || car; 
console.log(res); // 2

house = 0;
res = house || car;
console.log(res); // 1

house=2;
car = 1;
res = car && house;
console.log(res); // 2

// 把house改为0
house=0;
res = car && house;
console.log(res); // 0

自增自减运算符

++a/--a :先把a的值加/减1,使用加/减1后的值
相当于 :  a = a + 1; return a;

a++/a-- : 先返回a的值供使用,再把值加/减1
ruturn a; a = a +1;

三元运算符

条件运算符(三目运算符) 等价于if...else
条件表达式 ? 表达式1 : 表达式2;

如果条件表达式为真,整个运算的结果为表达式1的结果;
如果条件表达式为假,整个运算的结果为表达式2的结果

条件表达式也可以嵌套使用

表达式

由常量,变量,运算符组成的就是表达式,表达式都有结果。

表达式根据结果可以分为两类:

整型表达式 a + 5

条件表达式 a > 5

语句

语句是代码执行的最小单位

注:每条语句都会以分号结尾,js里的分号可以省略,但是建议加上分号。