• Web前端基础(8):JavaScript(二)


    1. 数据类型转换

    1.1 将数值类型转换成字符串类型

    1.1.1 隐式转换

    在js中,当运算符在运算时,如果两边数据不统一,CPU就无法计算,这时我们编译器会自动将运算符两边的数据做一个数据类型转换,转成一样的数据类型再计算。

    这种无需程序员手动转换,而由编译器自动转换的方式就称为隐式转换。

    例如1 > "0"这行代码在js中并不会报错,编译器在运算符时会先把右边的"0"转成数字0`然后在比较大小。

    var n1 = 123;
    var n2 = '123';
    var n3 = n1+n2;
    // 隐式转换
    console.log(typeof n3);

    1.1.2 强制类型转换

    强制类型转换是非常常用的技术,虽然它曾经导致了很多隐蔽的 BUG ,但是我们不应该因噎废食,只有理解它的原理才能享受其带来的便利并减少 BUG 的产生。

    var n1 = 123;
    // 强制类型转换String(),toString()
    var str1 = String(n1);
    console.log(typeof str1);
    
    var num = 234;
    console.log(num.toString())

    1.2 将字符串类型转换成数值类型

    var  stringNum = '789.123wadjhkd';
    var num2 =  Number(stringNum);
    console.log(num2)
    
    // parseInt()可以解析一个字符串 并且返回一个整数
    console.log(parseInt(stringNum))
    console.log(parseFloat(stringNum));

    1.3 任何数据类型都可以转换成boolean类型

    var b1 = '123'; 
    var b2 = 0;
    var b3 = -123
    
    var b4 = Infinity; 
    var b5 = NaN;
    
    var b6; //undefined
    var b7 = null;
    
    // 非0既真
    console.log(Boolean(b7))

    2. 流程控制

    JavaScript的流程控制语法和java的很相似,所以大家可以看我的java基础-流程控制流程控制(续)  内容比这个写的详细

    2.1 if判断语句

    2.1.1 if格式

    var ji  = 20;
    if(ji >= 20){
        console.log('恭喜你,吃鸡成功,大吉大利')
    }
    alert('alex');//下面的代码还会执行

    2.1.2 if-else格式

    var ji  = 20;
    if(ji>=20){
        console.log('恭喜你,吃鸡成功,大吉大利')
    }else{
        console.log('很遗憾 下次继续努力')
    
    }

    2.1.3 if-else if-else格式

    if (true) {
       //执行操作
    }else if(true){
        //满足条件执行            
    }else if(true){
       //满足条件执行        
    }else{
      //满足条件执行
    }

    2.2 逻辑与&&、逻辑或||

    案例1:

    //1.模拟  如果总分 >400 并且数学成绩 >89分 被清华大学录入
    //逻辑与&& 两个条件都成立的时候 才成立
    if(sum>400 && math>90){
        console.log('清华大学录入成功')
    }else{
        alert('高考失利')
    }

    案例2:

    //2.模拟 如果总分>400 或者你英语大于85 被复旦大学录入
    //逻辑或  只有有一个条件成立的时候 才成立
    if(sum>500 || english>85){
        alert('被复旦大学录入')
    }else{
        alert('高考又失利了')
    }

    2.3 switch

    var gameScore = 'better';
    
    switch(gameScore){
    
    //case表示一个条件 满足这个条件就会走进来 遇到break跳出。如果某个条件中不写 break,那么直到该程序遇到下一个break停止
        case 'good':
        console.log('玩的很好')
        //break表示退出
        break;
        case  'better':
        console.log('玩的老牛逼了')
        break;
        case 'best':
        console.log('恭喜你 吃鸡成功')
        break;
    
        default:
        console.log('很遗憾')
    
    }

    2.4 while循环

    循环三步走:

    1.初始化循环变量

    2.判断循环条件

    3.更新循环变量

    var i = 1; //初始化循环变量
    
    while(i<=9){ //判断循环条件
        console.log(i);
        i = i+1; //更新循环条件
    }

    2.5 do_while

    //不管有没有满足while中的条件do里面的代码都会走一次
    var i = 3;//初始化循环变量
    do{
    
        console.log(i)
        i++;//更新循环条件
    
    }while (i<10) //判断循环条件

    2.6 for循环

    for(var i = 1;i<=10;i++){
         console.log(i)
     }

    for循环可以嵌套使用。

  • 相关阅读:
    866. 回文素数
    如何在本地搭建EasyPlayer的H5 demo播放H265视频流?
    【方案】TSINGSEE车载监控平台的城市渣土车监管解决方案
    车载监控4大趋势,未来市场如何变化?
    我国车载监控市场迎来增速,智能化监管成为主要需求
    【工程车远程监控方案】TSINGSEE车载监控平台助力安全生产
    语音对讲功能在车载监控系统中的应用意义
    AI人工智能技术在车载监控系统中有哪些应用?
    车载监控需求向视频化转变,TSINGSEE助力车辆高效监管
    如何通过GPS结合UWB技术实现车载监控精准定位?
  • 原文地址:https://www.cnblogs.com/liuhui0308/p/11880916.html
Copyright © 2020-2023  润新知