js基础篇 02 运算符 if if-else switch

02 运算符 if if-else switch

运算符

算数运算符

±*/%

和其他语言一样,不过需要注意都是浮点数的计算容易出问题,这一点java有时候也会

console.log(0.1 + 0.2); // 0.30000000000000004
console.log(0.07 * 100); // 7.000000000000001

所以也导致我们不能直接拿浮点数来进行相比较是否相等

var num = 0.1 + 0.2;
console.log(num == 0.3); // false

表达式与返回值

和其他语言一样,是由数字、运算符、变量等组成的式子 我们称为表达式

例子
 console.log(1 + 1); 
// 1 + 1 就是表达式 2 就是返回值
// 在我们程序里面  2 = 1 + 1   把我们的右边表达式计算完毕把返回值给左边
var num = 1 + 1;

前置后置递增运算符

和其他语言一样,前置后置只是改变返回值和改变值的顺序

前置自增 先变量自加1 后面表达式返回自增后的值

后置自增 先表达式返回原值 后面变量再自加1

比较运算符

<、>、>=、<=

和其他语言一样,比较两边变量或者值的大小,需要注意的是>=、<=,都和==一样有着一样的特性

==

我们程序里面的等于符号 是 == 默认转换数据类型 会把字符串型的数据转换为数字型 只要求值相等就可以

例子
console.log(3 >= 5); // false
console.log(2 <= '4'); // true
console.log(3 == 5); // false
console.log('pink老师' == '刘德华'); // false
console.log(18 == 18); // true
console.log(18 == '18'); // true
console.log(18 != 18); // false
===

我们程序里面有全等 一模一样 要求 两侧的值 还有 数据类型完全一致才可以 true

例子
console.log(18 === 18); // true
console.log(18 === '18'); // false

逻辑运算符

&&、||、!

和其它语言一样,

逻辑与 && and 两侧都为true 结果才是 true 只要有一侧为false 结果就为false

逻辑或 || or 两侧都为false 结果才是假 false 只要有一侧为true 结果就是true

逻辑非 not !

它们也可以嵌套使用

短路中断运算

逻辑与短路运算

如果表达式1 结果为真 则返回表达式2 如果表达式1为假 那么返回表达式1,当遇到假时结束判断

例子
console.log(123 && 456); // 456
console.log(0 && 456); //  0
console.log(0 && 1 + 2 && 456 * 56789); // 0
console.log('' && 1 + 2 && 456 * 56789); // ''
逻辑或短路运算

如果表达式1 结果为真 则返回表达式2 如果表达式1为假 那么返回表达式1,当遇到真时结束判断

例子
console.log(123 || 456); // 123
console.log(123 || 456 || 456 + 123); // 123
console.log(0 || 0 + 456 || 456 + 123); // 456
补充

逻辑中断很重要 它会影响我们程序运行结果

赋值运算符

和其它语言一样,这个倒是没什么好展开了

运算符优先级

优先级运算符顺序
1小括号()
2一元运算符++ 、–、 !
3算数运算符先*/% 后±
4关系运算符>、>=、<、<=
5相等运算符、!=、=、!==
6逻辑运算符先&& 后||
7赋值运算符=
8逗号运算符

if

和其他语言一样,没有什么特别的

语法

if(条件表达式){
    // 执行语句
}

if-else

和其他语言一样,没有什么特别的

语法

if (条件表达式) {
    // 执行语句1
} else {
    // 执行语句2 
}

嵌套

和其他语言一样,没有什么特别的

if (条件表达式1) {
    // 语句1;
} else if (条件表达式2) {
    // 语句2;
} else if (条件表达式3) {
    // 语句3;
} else {
    // 最后的语句;
}

三元表达式

和其他语言一样,没有什么特别的

语法

条件表达式 ? 表达式1 : 表达式2

例子

用户输入0~59之间的一个数字
如果数字小于10,则在这个数字前面补0,(加0 拼接) 否则 不做操作
用一个变量接受这个返回值,输出

var time = prompt('请您输入一个 0 ~ 59 之间的一个数字');
// 三元表达式   表达式 ? 表达式1 :表达式2 
var result = time < 10 ? '0' + time : time; //   把返回值赋值给一个变量
alert(result);

switch

和其他语言一样,没有什么特别的

语法

switch (表达式) {
    case value1:
        执行语句1;
        [break;]
    case value2:
        执行语句2;
        [break;]
        ...
    default:
        执行最后的语句;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值