JavaScript数据类型、远算符和流程控制

一、JavaScript数据类型

1.数值型:

number整数和浮点数统称为数值。例如23或3.1415926等。

2.字符串型:

String由0个,1个或多个字符组成的序列。在JavaScript中,用双引号或单引号括起来表示,如"您好"、'学习JavaScript' 等。

3.逻辑(布尔)型:

boolean用true或false来表示。

4.空(null)值:

表示没有值,用于定义空的或不存在的引用。要注意,空值不等同于空字符串""或0。

5.未定义(undefined)值:

它也是一个保留字。表示变量虽然已经声明,但却没有赋值。

6.除了以上五种基本的数据类型之外,JavaScript还支持复合数据类型Object,复合数据类型包括对象和数组两种。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>数据类型</title>
        <script type="text/javascript">
            /*
            1.js是弱类型的语言脚本,所有的变量对象都是使用var来声明
            2.变量声明时没有确定变量类型,在变量赋值时才能确定
            3.js中数据类型有哪些?number string true/false null 
            4.js中变量可以重复声明,会进行覆盖
            5.alert(typeof i) 输出变量i的数据类型
            6.js中代码可以不用;结尾,其每一行都是一句独立的代码块,但是建议结尾;
            7.js中字符串单引号、双引号都可以使用
            8.js中同一个变量可以赋值不同类型的数据
            9.当给一个变量赋值为null时,变量类型的object类型
            10.变量只声明不赋值的情况下,数据类型是undefined
            11.对象、数据 可以叫做复合数据类型
            12.js中标识符和java保持一致,不要使用$符号
            */
           
            // var i=10;
            // // 打印数据类型
            // alert(typeof i)
            
            //定义字符串
            // var name = '李明';
            // alert(typeof name)
            
            //字符串可以赋值不同类型的
            // var a = 'helloworld'
            // a = 1234;
            // alert(typeof a)
            
            //bool
            // var a = 4>5;
            // alert(a)
            
            // //null类型--->object 类型
            // var b = null;
            // alert(typeof b)
            
            
            // var i;
            // alert(i)
            
            // var li = [1,2,3]
            // alert(li)
            // alert(typeof li)    
                    
            var d = new Date();
            alert(d)
            alert(typeof d)
        </script>
    </head>
    <body>
    </body>
</html>

二、JavaScript中运算符

1.JavaScript 算数运算符

算数运算符用于对数字执行算数运算:

运算符描述
+ 加法
- 减法
* 乘法
/ 除法
% 取模(余数)
++ 递加
-- 递减

2.JavaScript 赋值运算符

赋值运算符向 JavaScript 变量赋值。

运算符例子等同于
= x = y x = y
+= x += y x = x + y
-= x -= y x = x - y
*= x *= y x = x * y
/= x /= y x = x / y
%= x %= y x = x % y

 

关于/%

JS中,数字类型都是number,除法的结果中如果没有小数位,直接就是一个整数,如有小数位,才是浮点数

 

JS中如果出现除零,那么结果是 infinity,而不是报错

 

<script>
     /* 
     * 能除尽,则默认结果就是一个整数,不能除尽,结果默认就是浮点数
     * 除零不会出现异常,而是出现 Infinity
     * 和0取余数,出现NaN   not a number 不是一个数字
     * */
     alert(10/3);
     alert(10/0);
     alert(10%3);
     alert(10%0);
                        
 </script>

JS取余运算对于浮点数仍然有效,如果和0取余数,结果是NaN(not a number)

关于+

+ 同时也是连接运算符,看两端的变量类型,如果都是number那么就是算数中的加法 如果有字符串,那么就是连接符号,如果是布尔类型和number相加,那么会将true转化为1 将false 转化为0

<script>
     /*
     * +号中 如果一段是字符串,就变成了文字拼接
     * 数字和 boolean类型相加  true会转变成1  false会转变成0  再做数学运算
     * */
    var i=1;
    alert(i+1);
    alert(1+"1");
    alert(1+true);
</script>

关于=== 等同符

数据类型不同 直接返回false如果类型相同 才会比较内容

<script>
     /*
     * === 等同符
     * 如果数据类型不同,直接返回false  如果类型相同,才会继续比较内容
     * */
     var a =1;
     var b="1";
     var c=true;
     var d="true";
     alert(a===b)//f
     alert(a===c)//f
     alert(a===d)//f
     alert(b===c)//f
     alert(b===d)//f
     alert(c===d)//f
     alert("asdf"==="asdf")//t
</script>

三、JavaScript流程控制

1.分支结构 if  switch 

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>分支 结构</title>
        <script type="text/javascript">
            //定义变量表示月份,根据月份输出该月的季节
            
            var i = 3;
            if(i == 1 || i==2 || i==12 ){
                alert("适合去东北,看冰雕");
            }else if(i >= 3 && i<=5){
                alert("春天来了,踏青");
            }else if(i<5 && i<=8){
                alert("夏日炎炎,激情正酣");
            }else if(i>8 && i<=11){
                alert("秋日胡杨,大漠风情");
            }else{
                alert("查无此月份")
            }
            
            switch(i){
                case 3: 
                case 4:
                case 5:
                    alert("春天到了,万物复苏");
                    break;
                case 6:
                case 7:
                case 8:
                    alert("夏天到了,夏日炎炎");
                    break;
                case 9:
                case 10:
                case 11:
                    alert("秋天到了,秋风萧瑟");
                    break;
                case 12:
                case 1:
                case 2:
                    alert("冬天到了,银装素裹");
                    break;
            }
        </script>
    </head>
    <body>
    </body>
</html>

2.循环结构

while  do_while for  

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>循环结构</title>
        <script type="text/javascript">
            //输出1-10
            var i=1;
            while(i<=10){
                alert(i);
                i++
            }
            
            //求1-100之间的整数的和
            
            //do-while 条件是否满足都需要执行一次
            var sum = 0;
            var j = 1;
            do{
                sum+=j
                j++
            }while(j<=100);
            
            alert(sum);
            
            //for 循环
            
            //求和
            var s = 0;
            for(var z = 1;z<=100;z++){
                s+=z;
            }
            alert(s)
            
        </script>
    </head>
    <body>
    </body>
</html>

for循环

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>九九乘法表</title>
        <script type="text/javascript">
            for(var i=1;i<=9;i++){
                for(var j=1;j<=i;j++){
                    document.write(i+"*"+j+"="+i*j+"&nbsp;&nbsp;&nbsp;&nbsp;")
                }
                document.write("<br/>")
            }
        </script>
    </head>
    <body>
    </body>
</html>

四、JavaScript中函数

1.什么是JS的函数?

类似于java中的方法,JS中也可以定义一些函数,java中的方法签名包含访问修饰符,返回值类型,方法名,参数列表,异常列表,但是JS中定义函数的语法相对简单很多,主要以function作为函数关键字,具备函数名和参数列表,但是没有访问修饰符也没有返回值类型关键字和异常列表

2.函数定义的三种语法

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>函数</title>
        <script type="text/javascript">
            //方式一:
            function fun1(){
                alert("helloworld");
            }
            
            //方式二:
            var fun2 = function(){
                alert("helloworld");
            }
            
            //方式三: 不常用,后面括号中函数体内容要加引号
            var fun3 = new Function('alert("helloworld");')
                

            //调用函数
            fun1();
            fun2();
            fun3();
        </script>
    </head>
    <body>
    </body>
</html>

3.函数参数和返回值

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>函数参数和返回值</title>
        <script type="text/javascript">
            /*
            传入的形参和实参个数可以不一样
            
            */
            
            /* function func01(a,b,c){
                alert(a+b+c);
            }
            func01(3,4) //少传参数 NaN
            func01(3,4,4) 
            func01(3,4,4,5) //多传入参数 多出来的相当于没传 */
            
            /* var func02 = function(a,b){
                var c = a + b
                return c //返回值
            }
            
            var x = func02(3,4)
            alert(x) */
            
            //函数本身作为参数传入到另一个函数
            function funa(i,j){
                return i+j;
            }
            
            function funb(n){
                return n(7,8);
            }
            
            var f = funb(funa);
            alert(f)
        </script>
    </head>
    <body>
    </body>
</html>
posted @ 2021-11-20 21:40  酒剑仙*  阅读(63)  评论(0)    收藏  举报