JS-day1[基础,流程控制,错误异常处理]

javascript引入和使用方式:
  <script>  脚本内容  </script>        直接编写
  <script>  src="脚本路径"  </script>     引入方式
 
注释:
  单行注释  //
  多行注释 /* 注释内容*/
 
变量:  //注意结尾是分号,不加分号js会以换行符作为结束标志
  var i;    //声明一个局部变量
  i=10;   //赋值
 
  var j=20;   //先声明在赋值
 
  var a=10,b="abc",name="def";   一个声明多个变量
 
  //如果一个变量只声明未赋值,打印出undefind 
  var x;
  alert(x);        
 
  不使用var声明,那变量就是全局变量。
  变量命名,首字符只能是字母,下划线,$美元符 三选一,余下的字符可以是下划线,美元符或任何字母或任何数字符,且区分大小写。
 
常量:
  直接在程序中出现的数据值。
标识符:
  1.不以数字开头的字母、数字、下划线、美元符、组成
  2.常用于表示函数变量等的名称
  3.javaScript语言中代表特定含义的词称为保留字,不允许程序在定义为标识符

JS中的数据类型:

  基本数据类型:

  number   //数值

  boolean   //布尔值

  string   //字符串

  undefind   //undefind

  null   //null

  引用数据类型:

  object

 

数字类型(number)

  不区分整数型数值和浮点型数值

    var num=10;      //这是整数10

    var num=10.0    //整数,解析成10

    var num=.1       //表示0.1

    var num=10.    //整数,解析成10

  16进制数据前加上0x,八进制前面加0

字符串类型(string)

  是由unicode字符、数字、标点符号组成的序列,字符串常量首尾由单引号或双引号括起,JavaScript中单引号会被自动转为双引号

  字符串中部分特殊字符必须加上右划线"\";常用的转义字符 \n换行,\'单引号,\"双引号,\\右划线

布尔类型(boolean)

  仅有两个值"true"和"false",也代表1和0,可以不直接进行运算(true+1=2,false+1=1)

  主要用于JavaScript中的控制语句。

Null和Undefined类型

  Undefined类型
    Undefined 类型只有一个值,即 undefined。当声明的变量未初始化时,该变量的默认值是 undefined。
    当函数无明确返回值时,返回的也是值 "undefined";

  Null类型
    另一种只有一个值的类型是 Null,它只有一个专用值 null,即它的字面量。值 undefined 实际上是从值 null 派生来的,因此 ECMAScript 把它们定义为相等的。
    尽管这两个值相等,但它们的含义不同。undefined 是声明了变量但未对其初始化时赋予该变量的值,null 则用于表示尚未存在的对象。如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是 null。

运算符:

算术运算符:
    +   -    *    /     %       ++        -- 

比较运算符:
    >   >=   <    <=    !=    ==    ===   !==

逻辑运算符:
     &&   ||   !

赋值运算符:
    =  +=   -=  *=   /=

字符串运算符:
    +  连接,两边操作数有一个或两个是字符串就做连接运算

算术运算符:

  注意-1:自加减的一点问题

        var x = 10;


        // x++  : 先赋值载计算
        // var ret= x++;    //  x = x+1     ret为10  x为11


        // 先计算后赋值
        var ret = ++x;    //  x = x+1     ret为11   x为11

        console.log(x);
        console.log(ret);

  注意-2:

    1. "-"减号还可以表示负号  例如:x=-y

    2."+"加号还可以用于字符串的连接 例如:"abc"+"123"="abc123"

  注意-3:

    JavaScript是一门弱类型语言。

    你甚至可以这样玩:

        var x = 10;
        var y = "10";

        res = y+x;
        console.log(x==y);

结果为:
true

  注意-4:Nan

    属于数字类型,只有在转换一个不能被转换为number的字符串时会产生这个值。

流程控制:

  • 顺序结构
  • 分支结构
  • 循环结构

顺序结构:从上向下顺序执行

    <script>
        console.log(“星期一”);
        console.log(“星期二”);
        console.log(“星期三”);
    </script>

分支结构: 其实并没有缩进要求,JavaScript中使用()和{}来区分,但是为了美观所以缩进下

if(表达式){

  执行语句

}
else if(表达式){

  执行语句

}
else{

  执行语句

}

示例:
var week; week=1; if (week==1){ alert("week=1") } else if (week==50){ alert("week=50") } else { alert("None") }

 switch-case结构:

        var week=1;

        switch (week){
            case 1:console.log("星期一");break;      //如果week等于1,就打印星期一
            case 2:console.log("星期二");break;
            case 3:console.log("星期三");break;
            case 4:console.log("星期四");break;
            case 5:console.log("星期五");break;
            case 6:console.log("星期六");break;
            case 7:console.log("星期日");break;
            default:console.log("非法输入");break;
        }

循环结构:

// for 循环方式1:条件循环

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


// for 循环方式2:遍历循环
        var arr=[111,222,333];

        for (var i in arr){
            console.log(i,arr[i])
        }

// while循环
        var count=0;

        var sum=0;
        while (count<101){
            sum+=count;

            count++;
        }

        console.log(sum);


        var sum2=0;
        for (var i=0;i<101;i++){
            sum2+=i
        }
        console.log(sum2);

同样支持break和continue:

  break:跳出循环

  continue:跳过本次循环

异常处理:

//类似Python的try从上往下执行,只要有一个抛错就结束运行

try{    

  代码

}

catch (e) {

  //如果try中抛出了错误,则会执行这里的代码

  //e是一个局部变量,用来指向Error对象或其他抛出的错误对象

}

finally{

  //无论try中有没有抛出错误都会执行这里的代码

}

注:主动抛出异常使用  throw Error("XXX")

posted @ 2017-08-07 17:30  neuropathy_ldsly  阅读(146)  评论(0)    收藏  举报