<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      前端三劍客——javascript變量與數(shù)據(jù)類型

      javascript:  編程語言(解釋型)

       

      大綱:

      ??1.注釋方法

      ??2.js中斷句形式(, 和 ;)

      ??3.js存在形式與引入

      ??4.變量與常量的聲明和定義

      ??5.基本數(shù)據(jù)類型及方法

      ??6.數(shù)據(jù)類型的轉(zhuǎn)換??

      ??7.隱式轉(zhuǎn)換

      ??8.三元表達式

       

       

      注釋方法

      image

       

       

      js中斷句形式

      “  ,  ”:   對象的屬性和方法用 , 分割

      “  ;  ”:  語句的借宿用 ; 分割 

       

       

      js存在形式與引入

      ??1.外部js(一般位于static目錄的js文件夾下面)

      ????引入:<script src="./static/my.js">      </script>

      ??2.內(nèi)部jjs(一般位于head標簽的css樣式下面 或 body標簽結(jié)束位置)

      ????head標簽里

      <head>
          <meta charset="UTF-8">
          <title>Title</title>
          <script>
              alert(1);        //alert彈窗
          </script>
      </head>

      image

      ????body標簽結(jié)束位置

      <body>
      <h1 id="h1"><span>你好</span></h1>
      
      <script>
          alert(h1.innerHTML);
          alert(h1.innerText);
      </script>
      </body>

      1->image  2->image  3->image

      原因:單線程

       

      ????3.行間js:一般寫在元素的指定屬性值中

      image

      image

       

      變量與常量定義和聲明

      ????1,變量??var  let

      聲明:變量首次出現(xiàn)用var或者let關鍵字進行聲明,后續(xù)使用改變量無須加關鍵字????var全局變量??let局部變量

      定義:var 變量名 = 值 ??let 變量名 = 值

      ????2.常量   ??const

      聲明:用const聲明

      定義:const 變量名 = 值

      ????3.超全局對象進行屬性賦值  不用var let const聲明??name = "guoahn"??即name是全局對象Window的屬性而不是一個變量

      <body>
      <script>
          name = 200;     //本質(zhì)寫法:this.name = 200  不是進行聲明變量 而是對Windou對象進行屬性賦值   
          console.log(this);      //Window
      </script>
      </body>

       

       

      基本數(shù)據(jù)類型及方法

      通過typeof進行查看類型??console.log(typeof num);

      ??image   ??

      ??

      ??與python區(qū)別:1.python3中bool類型是int類型的子類  ??而js中2者是完全不相干的數(shù)據(jù)類型

      ?????????  2.js中Array表象相當于python中的list

       ????????    3.js中Object表象相當于python中的字典

      ????????? 4.js中Array類型屬于Object類型

       

      ????1.String類型

      聲明: var name = "guohan";??var name = String(“guohan”);

      常見方法:??1.length??var v = name.length;

      ???????2.索引???var v = name[0];

      ???????3.切片???var v = name.substring(0,2);

      ???????4.去除空白   var v = name.trim();

      ???????5.字符串重復 repeat(次數(shù));??

      var content;
      for (let i = 1; i <= 4; i++) {
          content = "";
          content = "*".repeat(i);
          console.log(content);
      }

       

      ????2.Array類型(屬于Object類型)

      聲明: var v =["guohan","gh"];??var v = Array["guohan","gh"];

      常見方法: 1.length  ??2.索引(改/查)

      ????? 3.增:?????? 3.1   尾部增加:v.push("你好");

      ?????????????? 3.2   頭部增加:v.unshift("你好");

      ?????????????? 3.3   索引增加:v.splice(索引位置,0,元素);????v.splice(1,0,"你好");

      ??????????????3.4  下標增加:

      var data = ["guohan","gh","gg"];
      data[4]=1                               //索引為4的值為1
      console.log(data,data.length);          //['guohan', 'gh', 'gg', 空, 1]  5
      var data = ["guohan","gh","gg"];
      data["xx"]=1
      console.log(data,data.length);          //['guohan', 'gh', 'gg', xx: 1]  3

      ????? 4.刪:??????4.1   尾部刪除:v.pop();

      ?????????????    4.2   頭部刪除:v.shift();

      ?????????????? 4.3   索引進行刪除: v.splice(索引位置,1);

      ?????5.判斷是否是數(shù)組:Array.isArray(變量)  返回boolean類型??console.log(   v ,   Array.isArray(v));

      image

       

       補充:forEach(數(shù)組的內(nèi)置方法):  遍歷數(shù)組的每個元素并對每個元素進行一次指定的函數(shù)(回調(diào)函數(shù))

      //數(shù)組.forEach((當前元素,當前下標,原數(shù)組)=>{函數(shù)代碼語句;});
      var obj = ["guohan","gh","gg","hh"];
      obj.forEach((item,key)=>{console.log(item)})        //數(shù)組.forEach((當前元素,當前下標,原數(shù)組)=>{函數(shù)代碼語句;});//里面是匿名函數(shù)新寫法
      //obj.forEach(item=>{console.log(item)});

       

      ????3.Object類型????例:const obj = { name: "張三", age: 18 };            ??對象的屬性可以是任意數(shù)據(jù)類型的數(shù)據(jù)  如 1(屬性):2(值)

      聲明:

      方式一(直接創(chuàng)建有屬性有方法的對象)    屬性名與屬性值之間必須用 : 連接

      <body>
      <script>
          var Person = {
              name : "guohan",            //屬性和方法用,隔開   屬性和屬性值用:
              age : 22,
              say(){
                  return "你好"
              }
          };
          console.log(Person,Person.say());
          
      </script>
      </body>

      image

       

      方式二(用函數(shù)創(chuàng)建對象)

      <body>
      <script>
          function Info(name,age){
              this.name = name;
              this.age = age;
              this.say = function(){
                  return "你好"
              }
          };
          var obj = new Info("guohan",22)
          console.log(obj,obj.say());
      </script>
      </body>

      image

       

      方式三(用類創(chuàng)建對象)

      <body>
      <script>
          class Person{
          constructor(name,age){              //初始化   constructor相當于python中__init__方法
              this.name = name;
              this.age = age;
          }
          say(){
              return "你好"
          }
          };
          var info = new Person("guohan",22);
          console.log(info,info.say());
      </script>
      </body>

      image

      方式四(創(chuàng)建空對象,添加屬性和方法)不常用

      //創(chuàng)建對象(Object)方式二(創(chuàng)建空對象再去添加屬性和方法)
      var Info = new Object();
      Info.name = "guohan";
      Info.age = 18;
      Info.say = function(){
      return "你好";
      };
      console.log(Info);

       

      常見方法:??1.length??

      ?????? 2.增/改/查類似python

      ??????3.刪??delete  info["屬性"]

       

       

       

      ????4.undefined類型

      觸發(fā)undefined條件  1.變量未進行賦值??2.變量賦值為undefined

      ????

      ????5.null類型(本身也是對象)

      相當于python中的None??只有給變量賦值為null時才有null的存在??用于進行變量的初始化

       

      數(shù)據(jù)類型的轉(zhuǎn)換

      String

      String轉(zhuǎn)Boolen

      除了空字符串轉(zhuǎn)為false   其他有類容的字符串(如“  ”(空格)“0”)均轉(zhuǎn)換為true????python中純空格的str轉(zhuǎn)bool是False

      //String轉(zhuǎn)Boolean
      var name = "guohan";
      var name1 = Boolean(name);
      console.log(name1,typeof name1);    //true 'boolean'
      
      var age = "";
      var age1 = Boolean(age);
      console.log(age1,typeof age1);      //false 'boolean'

       

      String轉(zhuǎn)Number

      除了純數(shù)字形式的字符串能通過Number進行轉(zhuǎn)換其他符合一定條件的得通過parseInt和parseFloat方法進行轉(zhuǎn)換轉(zhuǎn)換????“-.5”表示-0.5可轉(zhuǎn)

      //String轉(zhuǎn)Number
          var age = "10";
          var new_age = Number(age);
          console.log(new_age,typeof new_age);
      
          var num = "12歲";
          var new_num = Number(num);      //10 'number'
          console.log(new_num,typeof new_num);       //NaN 'number'  NaN是特殊的數(shù)值類型  當轉(zhuǎn)換對象不符合條件時才轉(zhuǎn)換成NaN
          console.log(typeof NaN);        //number

       

      String和Array

      //String轉(zhuǎn)Array
          var age = "18";
          console.log(Array(age),typeof Array(age));      //['18'] 'object'

       

      Number(較常見)

       

      Number轉(zhuǎn)Number和Number轉(zhuǎn)String和String轉(zhuǎn)Number

      1.數(shù)值之間可以進行轉(zhuǎn)換:parseInt和parseFloat(Int->Float   ,   Float->Int)??但是Int轉(zhuǎn)Float時不展示小數(shù)位

      //數(shù)值之間的轉(zhuǎn)換   parseInt和parseFloat
      var num1 = 10;
      var num2 = 3.14;
      console.log(parseFloat(num1),parseInt(num2));       //整數(shù)轉(zhuǎn)浮點數(shù)不加小數(shù)位 10 3

      2.所有數(shù)值類型均可以轉(zhuǎn)成字符串類型

      3.字符串類型轉(zhuǎn)數(shù)值類型:

      ????只要是數(shù)值開頭的字符串均可以通過parseInt和parseFloat進行轉(zhuǎn)換??注意:千分位表示的數(shù)值字符串通過這方法只能識別開頭

      //字符串轉(zhuǎn)數(shù)值
      
      //純數(shù)值形式的字符串     Number
      var num3 = "12.3";
      console.log(Number(num3));      //12.3
      console.log(parseInt(num3));    //12
      
      //以數(shù)字開頭的字符串轉(zhuǎn)數(shù)值     parseInt和parseFloat
      var num4 = "3.3公斤"
      console.log(parseInt(num4));  //3
      console.log(parseFloat(num4));    //3.3
      
      //數(shù)值開頭的千分位表示法的字符串       parseInt只能識別開頭的數(shù)值并轉(zhuǎn)換
      var num6 = "100_200_300"
      console.log(parseInt(num6));  //100

      ????非數(shù)值開頭的字符串通過parseInt和parseFloat進行轉(zhuǎn)換??得到NaN(特殊的數(shù)值類型)

      //非數(shù)值開頭的字符串轉(zhuǎn)數(shù)字
      var num5 = "共3元";
      console.log(parseInt(num5));        //NaN

       

      Boolean轉(zhuǎn)Number和Number轉(zhuǎn)Boolean

      數(shù)值類型轉(zhuǎn)布爾類型

      只有0和NaN轉(zhuǎn)成Boolean為false

      //數(shù)值類型轉(zhuǎn)布爾類型
      console.log(Boolean(99));      //true
      console.log(Boolean(0));     //false

      布爾類型轉(zhuǎn)數(shù)值類型

      //布爾類型轉(zhuǎn)數(shù)值類型
      console.log(Number(true));      //1
      console.log(Number(false));     //0

       

      隱式轉(zhuǎn)換

      /*
      隱式轉(zhuǎn)換:    存在于弱類型語言如js php要求不像py那樣苛刻
               +規(guī)則:倆個數(shù)值相加或者兩個字符串拼接  
               -規(guī)則:兩個數(shù)值相減
               與python不同:python中隱式轉(zhuǎn)換主要集中于數(shù)值運算和布爾判斷print(1-True)>>>0  print(1 + 1.1)>>>2.1  if 1:
                             不能print("2"-"1")    即python隱式轉(zhuǎn)換要求苛刻
      */
      
          //數(shù)值類型和布爾類型
          console.log(1+true);    //2
          console.log(1-true);    //0
      
          //字符串類型和布爾類型
          console.log("guohan"+true);     //guohantrue
          console.log("1"-false);     //1
          console.log("2"-"1");           //1

       

       

      三元表達式

      //三元表達式
      /*
          js:條件?真時返回的結(jié)果:假時返回的結(jié)果
          py:真時的返回結(jié)果 if 條件 else 假時返回的結(jié)果
      */
      
      //js
      age = 18;
      var ret = age>=20?"成年人":"未成年人";
      console.log(ret);
      
      //py
      age = 18
      ret = "成年人" if age>=18 else "未成年人"
      print(ret)

       

      posted @ 2025-10-29 10:06  guohan  閱讀(13)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 欧洲精品码一区二区三区| 久久99日韩国产精品久久99| 亚洲精品一区二区区别| 日本va欧美va精品发布| 天堂va欧美ⅴa亚洲va在线| 久久亚洲精品中文字幕馆| 国产播放91色在线观看| 亚洲国产欧美在线看片一国产| 亚洲一区二区日韩综合久久| 精品久久久久久无码不卡| 日韩精品国产二区三区| 亚洲av色香蕉一二三区| 国产精品成人99一区无码| 久久一日本道色综合久久| 国产原创自拍三级在线观看| 久久99精品久久久大学生 | 亚洲午夜久久久久久噜噜噜| 亚洲日本欧美日韩中文字幕| 蜜臀av人妻国产精品建身房| 高清中文字幕国产精品| 亚洲人成小说网站色在线| 大渡口区| 久久永久视频| 精品人妻系列无码人妻漫画| 中文字幕av日韩有码| 丰满熟妇人妻中文字幕| 日韩精品国产二区三区| 仙桃市| 天干天干夜天干天天爽| 亚洲欧洲日产国无高清码图片| 国产亚洲精品中文字幕| 国内熟妇人妻色在线视频| 日韩国产av一区二区三区精品| 午夜福利理论片高清在线| 国产精品十八禁在线观看| 中文日产乱幕九区无线码| 熟妇人妻任你躁在线视频| 国产一级av在线播放| 临湘市| 性欧美三级在线观看| 国产一区二区三区黄网|