zoukankan      html  css  js  c++  java
  • math对象,数据类型转换,if else分支

    1、math对象

     

    方法 描述
    ceil(x) 对数进行上舍入(天花板函数)
    floor(x) 对数进行下舍入(地板函数)
    max(x,y) 返回x,y最大值
    min(x,y) 返回x,y最小值
    pow(x,y) 返回x 的 y 次方
    random() 返回0-1之间的随机数 (不包含0和1)(伪随机数,可能产生重复数值)
    round(x) 四舍五入

    Math.ceil(x) 结果为向上最近的一个整数,没有进行四舍五入

    如:

    var n4 = 3.3;
        var num = Math.ceil(n4); 
        alert(num);
    结果为 4

    Math.floor(x) 结果为向下最近的一个整数,没有进行四舍五入

    var n1 = 1.9;
        var num = Math.floor(n1);
    结果为  1
     
     // 返回数字的几次方
        var n1 = 2;
        var n2 = 3;
        var num = Math.pow(n1, n2);
        alert(num);
     
     // 3、随机返回1-10
        var n1 = Math.random() * 10;
        var n2 = Math.ceil(n1);
        alert(n2);

    2、数据类型判断

    typeof可直接获取变量数据类型

    NaN也是一个number类型

    变量的取值为null时, 变量的数据类型为object

    Undefined取值的变量或者变量未赋值: 数据类型为undefined

    Infinity(无穷大): 数据类型属于number类型

    3、数据类型转换

    (一)、字符串转化为数字类型

    1、隐式类型转化

    只要将数字的字符串与0相减(参与运算都可,加法运算除外)

    2、强制类型转换

    Number() parseInt() parseFloat()

    • Number() 方式转化:结果为原来的数字,如果有非数字的字符(false,true除外),那么转化失败,为NaN。

    • ParseInt()方法转化:从第一个字符开始判断,遇到小数点或非数字类型,不往后读取,保留的是整数部分, 如果后面跟有非数字的字符,能转化成功,保留前面数字。只含有非字符则转化失败NaN

    • ParseFloat(): 还是保留原来的数字,如果数字后面跟有非数字的字符,那么转化成功,保留数字。只含有非字符则转化失败NaN

    (二)将数字类型转换为字符串类型

    1、 隐式类型转换

    通过prompt方法可以实现转化或者将当前数字和一个字符串相加

    2、 强制类型转换(String(), 变量.tostring())

    1、String()转换

    n1 = String(n1);

    2、 .toString()转换

    n1 = n1.toString();

    (三)将其他数据类型转换为布尔类型

    1、隐式转换

    var a=0 ; var b=!a; alert(b)

    var a=1; var b=!a; alert(b)

    2、强制类型转换 :Boolean()

    a = Boolean(a);

     

     案例:

     // 1、用户输入一个三位数,用程序计算三位数字的和。

        var n1 = prompt("请输入三位数");
        // 百位数
        var n2 = parseInt(n1 / 100);
        var n3 = n2 * 10;
        // 十位数
        // var n4 = parseInt(n1 / 10 - n3);  //方法1
        var n4 = parseInt(n1 % 100 / 10); //方法二 取余
        // 个位数
        // var n5 = n1 - (n2 * 100 + n4 * 10);//方法一
        var n5 = parseInt(n1 % 10);
        var num = n2 + n4 + n5;

        alert("个位数为" + n5);
        alert("十位数为" + n4);
        alert("百位数为" + n2);
        alert("和为" + num);
        alert(typeof (num));

    4、 逻辑运算符

    概念:逻辑运算符用于测定变量或值之间的逻辑

    4.1 || 或

    • 如果有一个结果为false 和一个结果为true进行或运算 结果为: true

    • 如果两个结果都为false , 或运算后结果为false

    • 如果两个结果都为true,进行或运算后结果为 true

    4.2 && 且

    • 如果结果都为true,且运算后结果为true

    • 如果有一个结果为false,且运算后结果为false

    • 如果两个结果都为false,且运算后结果为false

    4.3 !非

    如果为true 非运算后 结果为false

    如果为false 非运算后 结果为true

     

     

    注意:逻辑运算必须是两个Boolean类型的数据进行 || && ! 运算

     

    等号运算符,逗号运算符

    运算符 含义
    == 等于,比较的是内容
    === 全等,比较的是内容和数据类型
    != 不等于,判断的是内容
    !== 不全等于,判断的是内容和数据类型

    可用逗号隔开 如:

    var a=5, b=6, c=7 ;

    a=b+c, c=a+b ;

    5、 If...else 条件分支

    首先是一个“if”,它后面紧跟着一个括号,括号里则是一个条件,确切地说是一个布尔类型的表达式。当条件成立的时候,这个值是true,if里的语句将会得到执行;否则这个值是flase,else里的语句将被执行。

    If(条件表达式) 条件表达式的结果必须为Boolean

    {

    如果条件表达式的结果为true,那么执行这里面的代码

    }

    Else

    {

    如果条件表达式的结果为false,那么执行这里面的代码

    }

     

     案例:

     // 2、接收用户输入的数字,判断是否再20-70之间,如果在,请将数字输出,否则提示不在该范围内

        var n1 = prompt("请输入数字");
        //字符串类型转换为数字类型
        n1 = parseInt(n1);
        //要用并集运算符
        if (20 <= n1 && n1 <= 70) {
            alert(n1);
        } else {
            alert("该数字不在范围内");
        }
    // 3、接收用户输入的值,该值和随机产生的随机数(0-99)作比较,如果用户输入的值大于随机数,输出您赢了,否则您输了
        var n1 = prompt();
        n1 = Number(n1);
        var n2 = Math.random() * 99; //0到99
        if (n1 > n2) {
            alert("您赢了");
        } else {
            alert("您输了");
        }

    6、 If ...else if... else 嵌套

    If(条件表达式)

    {

    结果为true 执行该处代码

    }

    else if(条件表达式)

    {

    结果为true 执行该处代码

    }

    else if(条件表达式)

    {

    结果为true 执行该处代码

    }

    else{

    如果以上代码条件都不满足,执行该处代码

    }

    7、三元运算符

    语法:条件表达式?结果1:结果2

    含义:问号前面的位置是判断的条件,判断结果为boolean型,为true时执行结果1,为false时执行结果2。


        // 写一个程序,接收用户输入的三个数字,使用三元运算表达式找出最大值
        var n1 = prompt();
        var n2 = prompt();
        var n3 = prompt();

        n3 > (n1 > n2 ? n1 : n2) ? alert(n3) : alert(n1 > n2 ? n1 : n2);

     

    星辰ꦿ.大海
  • 相关阅读:
    SRS之SrsRtmpConn::service_cycle详解
    SRS之SrsRtmpServer::connect_app详解
    SRS之RTMP连接处理线程conn:接收客户端推流
    SRS之RTMP handshake
    SRS之RTMP的TCP线程(即监听线程)
    CSPS模拟 77
    CSPS模拟 76
    CSPS模拟 75
    CSPS模拟 74
    CSPS模拟 73
  • 原文地址:https://www.cnblogs.com/xc-dh/p/13515160.html
Copyright © 2011-2022 走看看