zoukankan      html  css  js  c++  java
  • JavaScript学习/if-else结构/多重if、阶梯if/嵌套if结构/Switch-Case结构/循环结构的步骤/for循环

    新知识:
    JavaScript基础学习:
    基于浏览器
    基于(面向)对象
    事件驱动
    脚本语言
    JavaScrip的作用:
    表单验证,减轻服务端的压力
    添加页面动画效果
    动态更改页面内容
    Ajax网络请求
    JavaScrip的组成:
    ECMAScript DOM(文档对象模型) BOM(浏览器对象模型)
    文档各个节点
    语法标准:
    语法
    变量和数据类型
    运算符
    逻辑控制语句
    关键字、保留字
    对象
     
    基础结构:
    <script type="text/javascrip“>
    jacascrip语句
    </script>
     
    数据类型:
    S中的变量的数据类型
    数据类型:
    undefined —— 未定义,用var声明的变量,没有进行初始化赋值。 var a;
    null ———— 表示空的引用。 例如:空的对象,空的数组
    boolean ——真假,可选值 ture/false
    number —— 数值类型。 可以使小数,也可以是整数。
    string —— 字符串类型。 用""或''包裹的内容,成为字符串。
    object —— 复杂数据类型: 后续讲解,函数、数组等。。。
     
     
     
     
     
    代码:
    <!--
    【使用JS的三种方式】
    1、html标签中内嵌JS(不提倡使用。)
    <button onclick="javascript:alert('你真点啊。')" > 有本事点我呀!!!!</button>
     
    2、HTML页面中直接使用JS:
    <script type="text/javascript">
    //js代码
    </script>
     
     
    3、引用外部JS文件:
    <script language="javascript" src="Js文件路径">
    </script>
     
    [注意事项]
    ①页面中JS代码与引用JS代码,可以潜入到HTML页面的任何位置。但是,位置不同会影响到JS代码的执行顺序;
    例如:<script>在body前面,会在页面加载之前执行JS代码;
     
    ②页面中JS代码,使用type="text/javascript"
    引用外部的JS文件,使用language="javascript"
     
    ③引用外部JS文件的<script></script>标签,必须成对出现,且标签内部不能有任何代码!
    -->
     
     
    //js中的注释
    //单行注释 Ctrl+/
    /*段落注释 Ctrl+Shift+/ */
     
    /*【JS中的变量】
    * 1、JS中变量声明的写法:
    * var width=10; 使用var 声明的变量,只在当前函数作用域有效
    width=11; 不适用var,直接复制生成的变量,默认为全局变量,整个JS文件有效。
     
    var a,b,c=1;//同一声明语句同时声明多个变量,变量之间用英文逗号分隔。但,赋值需要单独赋,例如上式中,只有C赋为1,a/b为undefined(未定义)
     
    *【声明变量注意事项】
    * ①JS中所有变量类型声明,均使用var关键字。变量的具体数据类型,取决于给变量赋值的执行
    * ②同一变量,可以在多次不通过赋值时,修改变量的数据类型:
    * var width = 10;//width 为整形变量
    * width="哈哈";//width 被改为字符串类型
    * ③变量可以使用var声明,也可以省略var。[区别]不适用var,默认为全局变量
    *
    * ④同一变量声明,可以多次用var声明。但是并没有任何含义,也不会报错。第二次之后的声明,只会被理解为赋值。
     
     
     
     
     
    * 2、变量的命名规范
    ①、变量名,只能有字母、数字、下划线、$ 组成
    ②、开头不能使数字
    ③、变量区分大小写,大写字母与小写字母为不同变量
     
     
     
     
    *3、变量命名要符合驼峰法则
    变量开头小写,之后每个单词首字母大写;
    meiTianYaoYaiXin √
    或者每个单词小写但用下划线相隔
    mei_tian_yao_kai_xin √
     
    meitianyaokaixin ×
     
    * 4、JS中的变量的数据类型
    数据类型:
    undefined —— 未定义,用var声明的变量,没有进行初始化赋值。 var a;
    null ———— 表示空的引用。 例如:空的对象,空的数组
    boolean ——真假,可选值 ture/false
    number —— 数值类型。 可以使小数,也可以是整数。
    string —— 字符串类型。 用""或''包裹的内容,成为字符串。
    object —— 复杂数据类型: 后续讲解,函数、数组等。。。
     
     
    * 5、常用的数值函数:
    ①isNaN:用于判断一个变量或常量,是否为NAN(非数值)
    使用isNAN判断时,会尝试使用Nunber()函数进行转换,如果能转换为数字,则不是非数值
    ,结果为false
    "111"纯数字字符串,fales ; ""空字符串, false;"1a"包含其他字符,true;
    true/false 布尔类型,false
     
    ②Number():将其他类型转换为数值类型
    [字符串类型转数值]
    >>>>字符串为纯数值字符串,会转为对应的数字"111"->111
    >>>>字符串为空字符(""),会转为0 。 ""->
    >>>>字符串包含其他非数字字符时,不能转换,"111a"->NaN
     
    [布尔Boolean类型转数值]
    true -> 1 false -> 0
     
    [null/undefined转数值]
    null -> 0 Undfined -> NaN
     
    [object类型转数值]
    *(以后在了解)先调用Valueof 函数,确定函数是否有返回值,在根据上述各种情况判断。
     
    ③parseInt:将字符串转为数值类型
    >>> 空字符串,不能转。结果为NaN
    >>> 纯数值字符串,能转。"123"->"123" "123.5"->"123" (小数转化是,直接抹掉小数点,不进行四舍五入)
    >>> 包含其他字符的字符转。会截取第一个非数值字符前的数值部分。
    "123a456"->123 "a123a456"->NaN
     
    >>> parseInt 只能转String类型,Boolean/null/Undefined 均为NaN
     
    ④parseFloat:将字符串转为数值类型
    >>> 使用方式 同parseInt 。但是,当转化小数字符串时,保留小数点;转化整数字字符时,保留正数; "123.5" -> "123.5" "123" -> "123"
     
    ⑤typeof: 用来检测变量数据类型
    未定义 ->Undefined 字符串 -> Sting true/false -> boolean
    数值 -> Number 对象/null -> object 函数 -> function
     
    */
     
     
     
     
    /*[JS中的输出语句]
    document.write();
    输出语句,将write的()中的内容打印在浏览器屏幕上
     
    使用时注意:除变量/常量以外的任何内容,打印时必须放到""中。 变量/常量必须放在""外
     
     
    打印的内容同时又度部分组成时,之间用+链接:
    例如: document.write("左手中的纸牌"+left+"<br/>")
     
    alert()
    弹窗警告,()中的使用方式,同上
     
    */
     
     
    学习新知识:
    JS中的运算符-
    /*
    1、算术运算
    + 加、- 减、* 乘、 / 除、 % 取余(数)、++ 自增、-- 自减
     
    +:有两种作用,链接字符串/加法运算;当+两边都为数字时进行加法运算;当+两边任意一边是字符串时,进行字符串链接,链接之后的结构认为字符串。
    ++:自增运算符,将变量在原有基础上+1;
    --:自减运算符,将变量在原有基础上-1;
     
    【n++与++n 的异同】
    n++: 先使用n的值进行计算,然后再把n+1;
    ++n: 先把n的值+1,然后再用n+1以后的值,去运算;
     
    相同点,不论n++还是++n,在执行源代码以后,均会把n+1;
    eg: var a = 3;
    var b, c;
    b=a++ +2; a=4 [(a=3)b=5 ] 先计算再加值
    c=++a +2; a=5 c=7
     
    2、 赋值运算
    = 赋值、 += -= *= /= %=
     
    +=: a +=5 ; 相当于a = a + 5; 但是,前者的执行效率要比后者块。
     
    3、关系运算
    == 等于、=== 严格等于、 != 不等于 、>、<、>=、<=
     
    ===:严格等于;类型不同,返回false;类型相同,在进行下一步判断;
    ==:等于;类型相同 ,同===; 类型不同时,将登时两边均用Number()函数转为数字,再判断。
    特例:null == Undefined √ null === Undefined ×
     
    4、条件运算符(多目运算)
    a>b?true:false
     
    有两个关键符号, ?和:
    当?前面的部分运算结果为true时,执行:前面的代码;
    当?前面的部分运算结果为false时,执行:后面的代码;
     
    >>>多目运算符可以多层嵌套:
    例如: var jieguo = num>5?"输入太大了":(num==5?"蒙对了":"输入太小")
     
    5、 逻辑运算符
    &&、||、!
     
    [运算符的优先级]
    ()
    ! ++ --
    % / *
    + -
    < > >= <=
    == !=
    &&
    ||
    各种赋值: = += *= /= %=
     
     
    * */
     
    新知识:
     
    /*【if-else结构】
    1、结构写法:
    if(判断条件){
    //条件为true时执行
    }else{
    //条件为false时执行
    }
    2、if()中的表达式,运算之后的结果应该为:
    ① Boolean: true 真 false 假
    ② String:非空字符串为真 空字符串为假
    ③ Number:0为假 一切非0,均为真
    ④ Null/NaN/Undefined: 全为假
    ⑤ Object:全为真
    3、else{}结构,可以根据具体情况省略;
    */
    var num = {};
     
    if(num){
    //条件为true时执行
    document.write("if条件成立");
    }else{
    //条件为false时执行
    document.write("if条件不成立");
    }
    // num<10?document.write("if条件成立"):document.write("if条件不成立");
     
     
     
    /* 【多重if、阶梯if】
    1、结构写法:
    if(条件一){
    // 条件一成立
    } else if(条件二){
    // 条件一不成立&&条件二成立
     
    // else-if 部分,可以有N多个
    } else{
    // 条件一不成立&&条件二不成立
    }
     
    2、多重if结构中,各个判断条件是互斥的!只能选择其中一条路。
     
    3、if/else的{}可以省略,但是一般不提倡;
    如果省略{} 则,if/else结构包含的代码,仅为其后最近的一行(分号结束);
    如果省略{} 则,else结构永远属于其前方最近的一个if结构。
     
    */
    var num2 = 5;
    if(num2>5){
    document.write("输入过大");
    } else if(num2<5){
    document.write("输入过小");
    } else if(num2==5){
    document.write("输入正确");
    }
     
    if(num2==5) document.write("输入过大");
     
    if(num2==5) document.write("输入过大");
    else document.write("11");
     
    document.write("22");
     
     
    /* 【嵌套if结构】
    1、结构写法:
    if(条件一){
    // 条件一成立
    if(条件二){
    // 条件一成立&&条件二也成立
    }else{
    // 条件一成立&&条件二不成立
    }
    }else{
    //条件一不成立
    }
     
    2、if结构可以多重嵌套,但是原则上不超过3层
    */
     
     
     
     
     
    /* 【Switch-Case结构】
    1、结构写法:
    switch(表达式){
    case 常量表达式1:
    语句1;
    break;
    case 常量表达式2:
    语句2;
    break;
    ……
    default:
    语句N
    break;
    }
    2、注意事项:
    ① switch()中的表达式,以及每个case后面的表达式,可以为任何JS支持的数据类型(对象和数组不行);
    ② case后面的所有常量表达式,必须各不相同,否则只会执行第一个;
    ③ case后的常量可以是任何数据类型;同一个switch结构的不同case,可以是多种不同的数据类型;
    ④ switch在进行判断的时候,采用的是全等判断===。
    ⑤ break的作用:执行完case代码后,跳出当前switch结构;
    缺少break的后果:从正确的case项开始,依次执行所有的case和default。原因:⑥↓
    ⑥ switch结构在判断时,只会判断一次正确答案,当遇到正确的case项后,将会不再判断后续项目。依次往下执行。
    ⑦ switch结构的执行速率要快于多重if结构。在多路分支时,可优先考虑使用switch结构。
    */
    var num4 = 5;
    switch (num4){
    case 4:
    document.write("这是9的case块!");
    //break;
    case 5:
    document.write("这是10的case块!");
    //break;
    case 6:
    document.write("这是11的case块!");
    //break;
    default:
    document.write("这是default的case块!");
    break;
    }
     
     
     
    新知识:
    <script type="text/javascript">
    /*【循环结构的步骤
    ①声明循环变量
    ②判断循环条件
    ③执行循环地(while的{}中所有代码)操作
    ④更新循环变量
     
    然后,循环执行 ② ③ ④
     
     
    【js中循环条件支持的数据类型】
    ①Boolean:true 真 false 假
    ②string:非空字符串真 空字符串为假
    ③Number:0为假,一切非0,均为真
    ④null/NaN/Undefined: 全为假
    ⑤object:全为真
     
    */
     
    /*
     
    * while循环特点:先判断,再执行;
    * do-while循环特点:先执行,在判断;即便初始条件不成立,do-while循环也至少执行一次。
    * */
     
     
     
    var n=1; // ①声明循环变量
    while(n<=10){// ②判断循环条件
    document.write("今天天气好好。<br />");//执行循环地(while的{}中所有代码)操作
    n++; //④更新循环变量
    }
     
    var m = 1;
    do{
    document.write("今天天气一点也不好。<br />");
    m++;
    }while(m<=5);
     
    /*【for循环】
    1、for循环有三个表达式,分别为:①定义循环定量②判断循环条件③更新循环变量
    三个表达式之间,用;分隔。
    for循环三个表达式均可以省略, 两个;缺一不可
    2、for循环特点;选判断,在执行;
    3、for循环三个表达式,均可以有多部分组成,之间用逗号分隔;但是,第二部分判断条件需要用&&链接,最终结果需要为真/假
    */
     
    var b = 1;
    for (;b<5;) {
    document.write("今天天气好好666<br />");
    b++;
    }
     
     
     
    </script>
  • 相关阅读:
    HDU 1850 Being a Good Boy in Spring Festival
    UESTC 1080 空心矩阵
    HDU 2491 Priest John's Busiest Day
    UVALive 6181
    ZOJ 2674 Strange Limit
    UVA 12532 Interval Product
    UESTC 1237 质因子分解
    UESTC 1014 Shot
    xe5 android listbox的 TMetropolisUIListBoxItem
    xe5 android tts(Text To Speech)
  • 原文地址:https://www.cnblogs.com/zhuanzhibukaixin/p/6664421.html
Copyright © 2011-2022 走看看