我爱编程

第四次

2018-05-25  本文已影响0人  My丿飞

javascript的发展史

    1、1992年 ,Nombas 为自己的软件写一款脚本语言 C--  --》 ScritEase ,可以嵌入在网页中运行

2、1995年 ,Netscape(网景) Navigator2.0 --> LiveScript --> Javascript ,Java 与 Javascript之间没有任何关系

  3、1996年 ,Microsoft 在 IE3.0 中发布 JS的克隆版 --> JScript

4、1997年 ,Javascript 1.1 版本 作为 草案 提交给了  ECMA(欧洲计算机制造商联合会) ECMA-262标准  ECMAScript 作为 JS        javascript的组成:ECMAscript Dom Bomjavascript的语法

1.在标签中写js代码,该标签可以放在页面的任何位置       JS脚本

2.外部脚本文件1)、创建脚本文件并编写 脚本脚本文件:***.js2)、引入外部脚本文件注意:1、必须是成对的 script2、该对标记中,不允许出现任何内容  3.注释        1)、单行注释单行注释  2)、多行注释    /*      * 多    * 行    * 内    * 容    */       

4.严格区分大小写          console.log("");          Console.log("");错误          变量和常量    1.变量:内存中的一段存储空间 

2. 变量的声明1)、声明        var 变量名;2)、赋值    变量名=值;3)、声明变量并赋初始值    var 变量名=值;4)、注意 

1、声明变量时可以不加 var 关键字    var stuname="张三丰";== stuname="张三丰";                        如果省略了 var 关键字, 那么声明的就是"全局变量",有可能造成 "全局污染" 的效果    5)、如果声明变量没有赋值的话,那么将自动赋值为 undefined

3、一次性声明多个变量声明 stuname,stuage,stugender 变量    var stuname;    var stuage;    var stugender;一次性声明多个变量 使用一个 var 关键字, 多变量名之间 用 , 分隔    var stuname, stuage,stugender;

4、变量的命名规范1)、可以包含字母、数字、下划线、$var +name; 错误 ,不能有 +2)、不能以数字开头var 1name; 错误var name1; 正确var $name; 正确var _name; 正确3)、尽量见名知意var a;var b,c,d,e,f,g,aab,aac;以上方式, 不推荐var username;var salary;

5、可以采用 "匈牙利命名法","驼峰命名法","下划线命名法" 1)、驼峰命名法      如果 变量名 是由多个单词组成的合成词,从第二个单词开始,每个单词的首字符变大写。var age;var gender;var salary;var userName;var userSalary;var stuJavaScore2)、下划线命名法var _userName;一般用于全局变量命名var user_name;常量:一旦声明就不可以改变的值叫做常量        比如:1天=24小时  1小时=60分钟  太阳每天东升西落 

1.声明常量的方法:    1)声明常量用 const,常量名一般大写,声明常量必须赋值        const DAY;            const PI;    2)声明常量并赋值        const DAY=24;        const PI=3.14;                    数据类型:  数字:number      整数和小数    var a=5;    var b=13.5;var c=0.5;  字符串:string    只要有引号的都是字符串(单/双)    var str='hello world';    var c='123';    var d="你好"; 布尔:boolean只有两个值 true真  false假      var boo1=true;    var boo2=false;      var boo3='true';string      var boo4='false';string      布尔值在做运算的时候      true会转换为1      false会转换为0      true+false=1      1+true=2        undefined:未定义的 

5.null  空     

6.object  对象            var a=5;        console.log(a);    声明一个变量没赋值会返回一个undefined        var b;        console.log(b);    直接输出一个未声明的变量会报错        console.log(c);

隐式转换1.number+number    var a=3;    var b=5;    console.log(a+b);

2.number+string  拼接    var a=3;    var b='5';    var c='hello world';    console.log(a+c);

3.number+boolean      var a=3;    var b=true;    var c=false;    console.log(a+c);    console.log(a+b);

4.string+boolean  拼接    var a='3';    var b=true;    console.log(a+b); 5 number+undefined    var a=3;    var b;//undefined    console.log(typeof(a+b));    NaN:not a number  不是一个数字    NAN是一个numberstring +undefined      var a='3';    var b;//undefined    console.log(typeof (a+b));总结:    number+string  拼接    number+boolean  boolean转number    number+undefined  NAN    boolean+boolean  求和判断数据类型:    typeofNaN :not a number  不是一个数字 数据类型:number isNaN:is not a number  是    不是一个数字        作用:判断一个非数字    如果是数字返回:  如果不是一个数字返回:var a=3;var b='5';var c=true;  console.log(isNaN(b));falseconsole.log(isNaN(b));true声明提前  console.log(a);var a=3;js在执行的时候会自动把var提到标签顶部

但是赋值不会被提到顶部

所以就等于这是一个没有赋值的变量

没有赋值的变量会返回  undefined

    var a;

    console.log(a);

    a=3; n

显示转换/强制转换

parseInt();转换成整数

    var a='5';

      var b=parseInt(a);

      console.log(typeof a);

      console.log(isNaN(a));

    parseFloat();转换成小数

      var a='1.01';

      var b=parseFloat(a);

      console.log(b);

        console.log(typeof b);

    Number();转换成number类型

      var a='5';

      var b=Number(a);

      console.log(b);

      console.log(typeof b);

    toString();转换成字符串

        var a=true;

        var b=a.toString();

        console.log(b);

        console.log(typeof b);

    toFixed();按要求保留小数位数

        var a=13.956;

        var b=a.toFixed(4);

        console.log(typeof b);

一、隐式转换结论

1、数字 + 字符串 :将数字转换成字符串

2、数字 + boolean :将 boolean 转换为 number类型

3、数字 + undefined :结果为 NaN,NaN的类型是 number

4、字符串 + boolean :将boolean 转换成字符串

5、boolean + boolean :都转换为number在做相加运算

          注:NaN:not a number  判断一个非数字    如果不是一个数字返回true,如果是一个数字返回false

            案例: var str="hello world";

                  var str1=isNaN(str);

                  console.log(str1);

二、显示转换/强制转换

        1.toString()  将任意类型转换为字符串类型

              var  num=5;

              var str=num.toString();

              console.log(typeof str);

        2.parseInt(); 将一个数据转换为整数

              var  num=5.5;

              var str=parseInt(num);

              console.log(str);//5

              console.log(typeof str);//number

        3.parseFloat()  将一个数据转换为小数

              var  num=.5;

              var str=parseFloat(num);

              console.log(typeof str);//0.5

              console.log(typeof str);//number

        4.Number  将一个数据转换为number类型

              var str="35.5你好";

              var str1=Number(str);

              console.log(str);

三、运算符和表达式

        1.算数运算符

                +,-,*,/,

                %:模,计算两个相除的数字的余数

    10 % 3 = 1

    10.5 % 3 = 1.5

    ...

    ++,-- 运算符,单目运算符

    ++:自增加一

    ++在前 :先自身加一,在赋值

var a=5;

var b=++a;

//先把a的值自增+1

//再把自增后的赋值给b

++在后 :先赋值,在自增加一

var a=5;

var b=a++;

//先把a的值赋值给b

//再自增加一

    --:自减减一

--和++的性质一样

四舍五入:toFixed(保留位数);

案例:

    var a=3.1415;

var b=a.toFixed(2);

document.write(b);

    由算术运算符组成的表达式,叫算术表达式

    var a;

    var b;

    var c = a + b; //算术表达式,赋值表达式

        2、关系运算符

    1、作用

    判断数据之间的大小或相等关系

    2、关系运算符

    >,<,>=,<=,==,!=

由 关系运算符所组成的表达式 称之为 关系表达式,关系表达式的值为boolean类型

                    ==,!= : 只判断数值是否相等

全等:===

类型相同 数值相同

不全等:!==

3、逻辑运算符

1、作用

判断多条件 以及 条件取反时使用

2、语法

1、逻辑    非

对现有条件 取反

语法:!

2、逻辑    与

有两个条件,两条件同时为真时,表达式才为真。

语法:&&

3、逻辑    或

有两个条件,只要有一个为真,表达式就为真

语法:||

3、运算结果

true && true : true

true && false : false

false && true : false

false && false :false

true || true : true

true || false :true

false || true : true

false || false :false

            4.条件运算符(三目运算符)

    1、语法

? :

表达式1?表达式2:表达式3;

表达式1,值应该为 boolean 类型

如果表达式1的值为true,那么表达式2的值则作为整个表达式的值

如果表达式1的值为false,那么表达式3的值则作为整个表达式的值

ex :输入考试成绩,如果成绩大于等于60 ,则输出及格,否则输出 不及格

var a=prompt("请输入你的成绩");

if(a>=60){

alert("及格");

}else{

alert("不及格");

}

一:运算符和表达式

            一、流程控制语句

      1.

      if(条件){

        //要执行的语句

      }

          2.

          if(条件){

//条件为true时执行的语句

          }else{

//条件不为true时执行的语句

          }

  3.多重条件语句

  if(条件){

  }else if(){

  }

        4.switch .....case

            switch(表达式/变量){

case 情况1:

    //要执行的语句;

    break;

case 情况2:

    //要执行的语句;

    break;

case 情况3:

    //要执行的语句;

    break;

default://以上任何一块都没匹配上的时候

  //要执行的语句;

    break;

            用switch .....case完成以下练习

              请输入今天星期几,

              星期一吃:米饭

              星期二:吃馒头

              星期三:吃面包

              星期四:吃包子

              星期五:吃饺子

              星期六:吃油条

        否则:不管饭,自己解决

        var a=prompt("今天星期几")

switch(a){

case"星期一":

alert("米饭");

break;

case"星期二":

alert("馒头");

break;

case"星期三":

alert("面包");

break;

case"星期四":

alert("包子");

break;

case"星期五":

alert("饺子");

break;

case"星期六":

alert("油条");

break;

else:-

alert("不管饭,自己解决");

break;

}

        switch .....case直落形式

        //即不管是哪种情况都做相同的事

          switch(){

case 情况1:

case 情况1:

case 情况1:

case 情况1:

case 情况1:

  //要执行的语句

  break;

          }

上一篇下一篇

猜你喜欢

热点阅读