JS基础-3

JS基础-3

1.运算符

(1)位运算符(了解)

模拟计算机底层的运算过程,先将值转为二进制然后再运算,运算完再把结果转会成十进制

1 2 3 4 5 6 7

1 10 11 100 101 110 111

& :按位与,上下两位比较都是1,则结果为1,否则为0

console.log(3&5);
/* 3&5
   011
   101
& ______
   001

*/ 

在这里插入图片描述

| :按位或,上下两位含有1,则结果为1,否则为0

console.log(5|7);   //7
/*
    101
    111
|________
    111
*/ 

在这里插入图片描述

^ :按位异或,上下两位不同,则结果为1,否则为0

console.log(9^3);   //10
/*
    1001
    0011
^________
    1010
*/

在这里插入图片描述

>> :按位右移,去掉最后的若干位

console.log(7>>1);
/*
    让7往右移动一位
     7  ->  3
    111 -> 11
*/

在这里插入图片描述

<< :按位左移,在最后补若干个0

console.log(7<<1);
/*
    让7往左移动一位
     7  ->  14
    111 -> 1110
*/

在这里插入图片描述

(2)赋值运算符

= += -= *= /= %= …

计算赋值:先进行计算,再进行赋值

练习:声明变量保存商品的价格,让价格执行打八折,最后打印价格

var price=150;
price*=0.8;
console.log(price);

在这里插入图片描述

(3)三目运算符

一目运算符:由一个运算符连接了一个操作数据或者表达式

二目运算符:由一个运算符连接了两个操作数据或者表达式

三目运算符:由两个运算符连接了三个操作数据或者表达式

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

如果条件表达式为true,执行表达式1,否则执行表达式2

2.浏览器端函数

alert() 弹出警示框

prompt() 弹出提示(输入)框,需要使用变量保存用户输入的值,类型是字符串型;如果点击取消返回null

练习:弹出两次提示框,分别输入数字,计算两个数字相加的结果并打印出来

程序=数据+算法

程序的执行方式分为顺序执行,选择执行,循环执行

3.流程控制(选择执行)

(1)if 语句

满30减20

if (条件表达式){语句块}

//满30减20
//商品的总价
var total=32;
//判断是否满30
if(total>=30){
    total-=20
}
console.log(total);

如果if后语句中只有一行语句,则可以省略大括号。

以下数据作为条件表达式出现,隐式转换为false

0 ‘’(引号为空字符) NaN undefined null

练习:声明一个变量保存用户的签名内容,如果签名内容为空,设置签名内容’这家伙很懒,什么也没留下‘,最后打印签名内容

方法一:

var autograph='';
if (autograph===''){
    autograph='这家伙很懒,什么也没留下';
}
console.log(autograph);

方法二(取反):

var autograph='飞哥超勇的';
if (!autograph){
    autograph='这家伙很懒,什么也没留下';
}
console.log(autograph);

(2)if-elase语句

if(条件表达式){

​ 语句块

}else{

​ 语句块2

}

练习:声明变量分别保存输入的用户名和密码,如果用户是’root’,并且密码是’123456’,打印登陆成功,否则打印登陆失败

var uname='root',password='123456';
if (uname==='root' && password==='123456'){
    console.log('登陆成功');
}else{
    console.log('登陆失败');
} 

(3)if-else嵌套

if(条件表达式1){

​ 语句块1

}else if(条件表达式2){

​ 语句块2

}else{

​ 语句块n //以上所有条件都是false

}

练习:声明一个变量,保存数据库中读取的订单状态码,要求根据订单的状态码打印对应的汉字状态 1-等待付款;2-商家等待发货;3-运输中;4-已签收;5-已取消;其他-无法追踪

var status=6;
if (status===1){
    console.log('等待付款');
}else if (status===2){
    console.log('等待发货');
}else if (status===3){
    console.log('运输中');
}else if (status===4){
    console.log('已签收');
}else if (status===5){
    console.log('已取消');
}else{
    console.log('无法追踪');
}

在这里插入图片描述

(4)switch-case

根据一个表达式的值,选择执行对应的语句块,属于是一种特殊的多项分支语句

switch(表达式){

​ case 值1: //会将表达式的值和值1比较

​ 语句块1

​ break;

​ case 值2:

​ 语句块2

​ break;

​ default:

​ 语句块n

}

switch后的表达式在和case后的值比较的时候只能进行全等于(===),要求值和类型都相同。

练习:声明变量保存任意一个城市名称,根据成十名称打印对应的美食

var city='保定';
switch(city){
    case '保定':
        console.log('驴肉火烧');
        break;
    case '北京':
        console.log('北京烤鸭');
        break;
    case '高邮':
        console.log('咸鸭蛋');
        break;
    case '西安':
        console.log('羊肉泡馍');
        break;
    default:
        console.log('未知');
}

小编第一次在csdn上发表有关文章,如果有问题可以私信我,有问题也可以一起讨论。而且小编也会不定时更新的哦!!
小编寄语:希望大家多多努力,创造更好的自己
侵删

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值