JavaScript 基础(day02)

练习
使用变量保存圆的半径, 常量保存圆周率, 计算圆的周长和面积
声明多组变量保存商品的单价和数量, 计算商品的总价

复习

  • 开发环境 JS 引擎(JS解释器)
    服务器端 NodeJs
    浏览器

  • 变量
    var $a_1 = 2,
    b = 5;

  • 常量
    const PI = 3.14;

数据类型

//检测数据类型 typeof
数据分为两种类型

  1. 原始类型
    1.1 数值型(Number)
    整型 在内存中占用 4个字节
    八进制特点 以 0 开头哦
    十六进制 0X 开头 a ~ f 代表 10~15 不区分大小写
    0XFF -> 255

    浮点型 占 8 个字节
    分为定点小数和指数型小数

1.2 字符串型(String)
    - 特点:数据被引号所包含就是字符串, 不区分单双引号
    查看任意一个字符的 Unicode 码
    "然".charCodeAt(); //28982
    
1.4 布尔型(Boolean)
    true | false
    在程序中表示 真 或者 假
    用于一些 比较的结果, 还可以使用是否的情况

1.5 未定义型(Undefined)
    未定义型就只有一个值 undefined
    在声明了变量未赋值就是 undefined

1.6 空值(Null)
    只有一个值是 null 将来会和引用类型一起使用

1.7 引用类型
    Object
  1. 数据类型转换
    2.1 隐式类型转换
    在运算过程中, 会自动发生转换

    2.1.1 数字+字符串
    数字被转为字符串

    2.1.2 数字+布尔值
    布尔型转为数值
    true -> 1
    false -> 0

    2.1.3 布尔型+字符串
    布尔转字符串
    “5” + true = “5true”

    JS 中加号(+)的作用
    执行加法云算
    执行字符串间的拼接
    减法、乘法、除法隐式转换
    将运算符两端的数据转为数值型, 如果转换失败, 返回NaN(Not a Number) 不是一个数字, 任何数值 与 NaN 做任何的算数运算 都会 为NaN; 自动的调用了 Number 转换成了数值型

练习: 查看以下的运行结果
    var num1 = 1, num2 = true, num3 = "tedu";
    console.log(num1 + num2 + num3);
    console.log(num2 + num3 + num1);
    console.log(num3 + num1 + num2);

强制转换

3.1 转为数值型
Number();
特殊的转换值

方法结果
Number(“2”)2
Number(“2a”)NaN
Number(undefined)NaN
Number(null)0

3.2 强制转换为整型
parseInt();
常用于将字符串或数字转为整型, 其他的数据返回 NaN, 如果要转为的字符串
开头为 非数字, 则返回 NaN

3.3 强制转换浮点型
和parseFloat的用法基本一致, 只是转换为浮点型数据
“2.5px” “m2.5”

3.4 将数值型和布尔型转换位 字符串型
toString();
var num = 10;
num.toString(); // “10”

运算符

表达式:由运算符连接的操作数据, 所组成的形式
运算符分为: 算术运算符 、 比较运算符 、 逻辑运算符 、 位运算符 、 赋值运算符 、 三目运算符

4.1 算术运算符
+ - * / % ++ –
% 取余
++ 自增, 在原来的基础上加一
– 自减, 在原来的基础上减一

  console.log(a++); 先打印 a 的值, 然后执行自增
  console.log(++a); 先自增, 然后在打印 a 的值

4.2 比较运算符
  > < >= <= == != ===(全等) !==(不全等) 
  返回一个布尔型的值
  ==  比较两个值是否相等
  === 不仅比较值, 还会比较类型

  - 如果数据类型不同和也会发生数据类型的转换
    3 > "10" 字符串转为数值 "10" -> 10

    3 > "10a"   // false
    3 < "10a"   // false
    3 == "10a"; // false
    NaN == NaN; // false
    NaN 与 任何值做比较, 包括自身 都返回 false

4.3 逻辑运算符
  && 并且  关联的两个条件都为 true, 否则为 false
  || 或者  关联的两个条件满足起一 true, 否则为 false
   !  非    取反向  !true -> false  !false -> true

  逻辑短路
    && 当第一个条件为 false 时, 就不需要再执行第二个条件
    || 当第一个条件为 true  时, 就不需要执行第二个条件

  注意事项: 逻辑短路无需关注整个逻辑运算的结果, 重点是否执行第二个条件
  练习: 以下程序会不会报错
    var num = 3;
    num > 5 && console.log(a);
    num > 1 || console.log(a);

  练习: 声明变量保存年龄, 如果满 18 岁, 打印 "成年人"

4.4 位运算符(了解)
  在执行运算时计算机会把数据转为 二进制 进行计算
  1 10 11 100 101 110 111 1000 1001 1010

  100101  -> 37
  1010110 = 64 + 16 + 4 + 2 = 86

  25 -> 11001
  128 64 32 16 8 4 2 1
  0   0  0  1  1 0 0 1

  按位与(&)
    上下两位都是 1 为 1 否则为 0
    128 64 32 16 8 4 2 1
    0   0  0  0  1 0 0 1
    ————————————————————
    0   0  0  0  1 1 0 1
    ————————————————————
    0   0  0  0  1 0 0 1
    ————————————————————
                 9

  按位或:
    上下两位含有 1, 结果是 1, 否则 是 0
    5|7
    10|19
    
    128 64 32 16 8 4 2 1
    0   0  0  0  0 1 0 1
    ————————————————————
    0   0  0  0  0 1 1 1
    ————————————————————
    0   0  0  0  0 1 1 1
    ————————————————————
                       7

  按位异或(^)
    上下两位不同为 1, 相同 0
    5^7
    10^19

  按位右移(>>)删除二进制的最后一位
  按位左移(<<)

课后任务

  1. 整理思维导图
  2. 练习:
    声明变量保存一个年份, 判断这个年份是否为闰年, 结合逻辑短路, 如果是闰年, 打印闰年
    // 判单标准: 4年一润, 100 不润, 400 再润
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值