zoukankan      html  css  js  c++  java
  • JS学习一

                   js中的变量输出       

     
    [使用JS的三种方式]
    1、 在HTML标签中,直接内嵌JS(并不提倡使用):
    <button onclick="alert('你真点啊!')">有本事点我呀!</button>
    >>> 不符合W3C关于内容与行为分离的要求!!!
     
    2、在HTML页面中,使用<script></script>包裹JS代码:
    <script type="text/javascript">
    JS代码
    </script>
    >>> Script标签可以放到页面的任何位置。
     
    3、引入外部的JS文件:
    <script language="JavaScript" src="js/01.js"></script>
     
    [注意事项]
    ① <script></script>可以嵌入到页面的任意位置。但是,位置的不同会导致JS代码的执行顺序不同;
    比如: <script></script> 放到<body>前面,则JS代码会在页面加载之前就执行;
     
    ② 引入外部的JS代码,<script></script>必须是成对出现的标签。而且,标签中不能再有任何的JS代码。
     
     
    【JS中的变量】
    1、JS中变量声明的写法:
    var num = 10; // 使用var声明的变量,属于局部变量,只在当前作用域内有效;
    num = 10; // 不用var声明的变量,默认为全局变量,在整个JS文件中都有效;
    var x=8,y,z=10; // 使用一行语句,同时声明多个变量。 上式中,y属于已声明,但是未赋值状态, 结果为undefined;
     
    [声明变量的注意事项]
    ① JS中所有变量的声明,均使用var关键字。 变量具体是什么数据类型,取决于给变量赋值的类型;
     
    ② JS中同一个变量,可以在多次不同赋值时,修改变量的数据类型;
    var a = 10; // 从初始声明是,a属于整数型;
    a = "haha"; // 重复赋值时,整数型的a被修改为字符串类型;
     
    ③ 变量可以使用var声明,也可以不使用var声明。
    [区别] 使用var声明为局部变量,不使用var声明为全局变量;
     
    ④ 只用var声明,但是不赋值。 结果为undefined;
    例如: var a; // a为undefined。
    但是,如果不声明也不赋值的a,直接使用会报错;
     
    ⑤ 同一变量名,可以多次使用var声明。 但是,后面的var并没有任何卵用。 第二次在使用var声明时,只会被理解为普通的赋值操作。
     
    2、 变量名的命名要求:
    ① 变量名,只能有字母、数字、下划线组成;
    ② 开头不能是数字;
    ③ 变量名区分大小写,大写字母与小写字母为不同变量;
     
    3、 变量名的命名规范:
    ① 要符合小驼峰法则(骆驼命名法):
    首字母小写,之后每个单词的首字母大写;
    myNameIsJiangHao √
    ② 或者使用匈牙利命名法:
    所有字母小写,单词之间用_分隔;
    my_name_is_jiang_hao √
    ③ mynameisjianghao × 能用,但是不规范。
     
    4、 JS中的数据类型:
    Undefined: 未定义。 已经使用var声明的变量,但是没有赋值。 var a;
    Null: 表示空的引用。
    Boolean: 布尔类型。表示真假,只有两个值: true/flase
    Number: 数值类型。可以是正数,也可以是小数;
    String: 字符串类型。用""或''包裹的内容,称为字符串;
    Object: 对象类型,后续讲解。。。
     
    5、 【常用的数值函数】
    ① isNaN():判断一个变量或常量,是否是NaN(not a num 非数值);
    使用isNaN()判断时,会尝试使用Number()函数进行转换,如果最终结果能够转为数字,则不是NaN,结果为false。
     
    ② Number()函数: 将其他类型的数据,尝试转为数值型;
      [字符串类型]
    >>> 字符串为纯数值字符串,会转为对应的数字; "111"->111
    >>> 字符串为空字符串,会转为0; ""->0
    >>> 字符串包含任何其他字符时,都不能转; "1a"->NaN
      [Boolean类型]
    true->1 false->0
      [Null/Undefined]
    Null->0 Undefined->NaN
      [Object]
    *(后续讲解)
     
    ③ ParseInt(): 将字符串转为整数类型;
    >>> 纯数值字符串,能转。
    "12"->12; "12.9"->12(小数转化时,直接抹掉小数点,不进行四舍五入)
    >>> 空字符串,不能转。 ""->NaN
    >>> 包含其他字符的字符串 ,会截取第一个非数值字符串前的数字部分;
    "123a456"->123; "a123b456"->NaN
    >>> ParseInt()只能转字符串,转其他类型,全是NaN。
     
    [Number函数与ParseInt函数的区别]
    1. Number函数可以转各种数据类型,ParseInt函数只能转字符串;
    2. 两者在转字符串时,结果不完全相同。(详见上面解释)
     
    ④ ParseFloat:将字符串转为数值型;
    转换规则与ParseInt相同,只是如果有小数,则保留小数点;如果没有小数,则依然是整数;
    "12.5" -> 12.5; "12"->12
     
    ⑤ typeof: 检测变量的数据类型:
    字符串->String 数值->Number true/false->Boolean
    未定义->Undefined 对象/NUll->object 函数->function
     
    var num = 11;
    alert(typeof(num));
     
     
    [JS中常用的输入输入语句]
     
    1. document.write(); 将()中的内容,打印输出到留言器屏幕上;
     
    使用时需注意:除变量/常量外的所有内容,必须放到""中。变量和常量必须放到""外面;
    如果同时又变量和字符串,必须用+链接;
    eg: document.write("左手中的纸牌"+left+"<br/>");
     
    2. alert(); 使用弹窗输出;
    弹窗警告,()中的内容与上述要求相同。
     
    3. promt(); 弹窗输入;
    接受两部分参数:
    ① 输入框上面的提示内容,可选;
    ② 输入框里面的默认信息,可选;
    当只写一部分时,表示输入框上面的提示内容;
     
    可以定义变量,接收输入的内容。 点击确定按钮,变量将被赋值为输入的内容; 点击取消按钮,变量将被赋值为null;
     
    输入内容时,默认接收的数据类型都是字符串!!!!!
     
     
     

                   js中的运算符        

     
    1.算术运算(单目运算符)
    + 、-、*、 /、 %(取余)、++(自增) 、--(自减)
     
    +:有两种作用,将链接字符串/加法运算。
    当+两边全为数字时,进行加法运算;
    当+两边任意一边为字符串时,起链接字符串的作用,链接之后的结果为字符串。
    除+外,其余符号运算时,会先尝试将左右变量用Number函数转化为数字,在运算。
     
     
    /:结果会保留小数点。
     
     
    ++:自增运算符,将变量在原有的基础上+1;
    --:自减运算符,将变量在原有的基础上-1;
    【a++和++a的异同】
    ① 相同点:无论a++还是++a,运算完以后,a的值均会+1;
    ② 不同点:a++,先用a的值去运算,在把a+1;
    ++a,先把a+1,在用a+1以后的值运算。
     
     
    2.赋值运算
    =(赋值) += -= *= /= %=
     
    +=:a+=b;相当于a=a+b,当时前者的运算效率比后者快,所以推荐使用+=的写法。
     
    3.关系运算
    ==(等于)、===(全等)、 !=(不等)、!==(不全等) >、 <、 >=、 <=
    >>> 关系运算符,运算之后的结果,只能是Boolean类型。
    >>> 判断一个数字是否处于某个区间,必须用&&链接;
    a<10 && a>0 对 10>a>0 错
    >>> ===: 严格等于,要求不仅 类型相同,值也相同;类型不同,结果直接为false;
    类型相同,再进行下一步判断。
    == :等于。类型相同,与===效果一样。类型不同时,会先尝试用Number函数将两边转为数字,然后再进行判断。
    但是,有个别特例,如:Null==false 错 Null==Undefined 对
    4.条件运算符(多目运算)
    a>b?true:false 
    有两个重要符号:? 和 : 
    当?前面部分,运算结果为true,执行 : 前面的代码;
    当?前面部分,运算结果为false,执行 : 后面的代码;
     
    冒号两边可以为数值,则整个式子可用于赋值。var a= 1<2?2:2;
    冒号两边可以是代码块,将直接执行代码。1<2?alert(1):alert(2);
    多目运算符可以多层嵌套。
     
    5.位运算符、 逻辑运算符
     
    && (与)、||(或)、!(非)
    && 两边都成立,结果为true
    || 两边有任意一边成立,结果为true
     
    6.运算符的优先级
    () (最高) 
    ! ++ --
    * / %
    + -
    > < >= <=
    == !=
    && (&& ||同时存在 &&高于||)
    ||
    = += -= *= /= 最低的是赋值
     
     
     

                   js中的分支结构        

    【if-else结构】
    1.结构的写法:
      if(判断条件){
      条件为true,执行if的{}
      }else{
      条件为false,执行else的{}
      }
    2. 注意事项:
      ① else{}语句块可以根据情况进行省略。
      ② if和else 后面的{}可以省略,但是省略{}后,if和else后面只能跟一条语句;(所有不建议省略{})
     
    【重点】
    3.if的()中的判断条件,支持的情况:
      ① Boolean:true为真,false为假;
      ② String:空字符串为假,所有非空字符串为真;
      ③ Number:0为假,一切非0数字为真;
      ④ null/Undefined/NaN: 全为假;
      ⑤ Object:全为真;
     
     
     
    【多重if、阶梯if结构】
    1.结构写法:
      if(条件一){
      条件一成立,执行操作。
      }
      else if(条件二){
      条件不成立&&条件二成立,执行操作。
      }
      else{
     
      }
     
    2.多重if结构中,各个判断条件是互斥的,执行选择其中一条路执行。
    遇到正确选项并执行完以后,直接跳出结构,不在判断后续分支。
     
     
    【嵌套if结构】
    1.结构写法:
     
      if(条件一){
        条件一成立
      if(条件二){
        条件一成立&&条件二成立
      }
      else{
        条件一成立&&条件二不成立
        }
      }
     
      else{
        条件一不成立
      }
    2.在嵌套if结构中,如果省略{},则else结构永远属于离他最近的一个if结构。
    3.嵌套结构可以多层嵌套,但是一般不推荐超过3层
  • 相关阅读:
    Pure-ftpd无法连接到服务器 425错误
    jQuery 取选中的radio的值方法
    Linux中RM快速删除大量文件/文件夹方法
    CSS(七):浮动
    CSS(六):盒子模型
    CSS(五):背景、列表、超链接伪类、鼠标形状控制属性
    CSS(四):字体和文本属性
    CSS三:CSS的三种引入方式
    CSS(二):选择器
    CSS(一):CSS简介和基本语法
  • 原文地址:https://www.cnblogs.com/suitongyu/p/7400188.html
Copyright © 2011-2022 走看看