Javascript小結

Javascript外部引用

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Untitled Document</title>
</head>
<body>
    <input type="text" name="" id="first">
    <!-- js文件放到body的最后面-->
    <script src="js/script.js"></script>
</body>
</html>

注意事項
把Javascript代碼放在什么位置有時會有影響,使用請注意。

根基語法

1. 常量

常量:恒久不變的量。

  • 數(shù)字常量:1234 -10 10.01
    與數(shù)學中的數(shù)字表示方式完全相同。
  • 字符串常量:"abcd" "1234" "漢字"
    使用雙引號包裹的一串字符,所以叫做字符串。

注意
字符串中包含雙引號,必須對雙引號進行轉移\"

2. 變量

變量:可以變化的量。

  • 聲明變量
 var 變量名;
  • 變量賦值
變量名=變量值;
  • 定義變量
 var 變量名=變量值;
  • 使用變量
    直接使用變量名,如同使用常量。

變量名規(guī)則

  1. 英文數(shù)字下劃線等(不要寫漢字)
  2. 不能數(shù)字開頭
  3. 變量名不能重復(不能使用已經(jīng)定義的)

變量值是常量或者其他變量名

3.運算

3.1 算術運算

加減乘除.jpg

算術運算與數(shù)學中的使用方式完全一致。但運算符有些差異。在鍵盤中,有加號+和減號-,但是沒有乘號×和除號÷,使用/代表除法,*代表乘法。此外,使用%表示取余操作。

看一下例子就知道了。

運算式 結果
1 + 1 2
31 - 41 -10
3 * 21 63
31 / 2 15.5
17 % 7 3
17 - 7 * 2 3

3.2 關系運算

比較.jpg

關系運算與數(shù)學中的使用方式完全一致。也是運算符略有不同。

操作 運算符
等于 ==
不等于 !=
小于 <
小于等于 <=
大于 >
大于等于 >=

看一下例子。

運算式 結果
1 > 1 false
2 < 3 true
2 != 3 true
3.01<=5 ture

3.3 邏輯運算

邏輯.png

算術運算和關系運算與數(shù)學中的使用方式完全一致,而邏輯運算大家可能比較陌生。下面詳細介紹一下邏輯運算。

算術運算和關系運算是數(shù)字的運算,邏輯運算是布爾值的運算。
布爾值只有truefalse兩個值,分別代表真假。也可以代表是非、對錯、開關、亮滅等完全對立的兩種狀態(tài)。

我們拿物理上的電路解釋邏輯運算。

  • 非(!)
    非就是取反,非是一個比較特別的操作符,之前的操作符是兩個操作數(shù)進行操作。這個運算只有一個操作數(shù)。規(guī)則如下:
  • !true等于false
  • !false等于true

前面的算術運算例子加上非運算結果如下:

運算式 結果
!(1 > 1) true
!(2 < 3) false
!(2 != 3) false
!(3.01<=5) false
  • 與(&&)
    與操作規(guī)則如下:
  • true && true等于true
  • false && true等于false
  • true && false等于false
  • false && false等于false

總結為一句話:有一個為false結果就是false。有些像電路中的串聯(lián)。

  • 或(||)
    與操作規(guī)則如下:
  • true || true等于true
  • false || true等于true
  • true || false等于true
  • false || false等于false

總結為一句話:有一個為true結果就是true。有些像電路中的并聯(lián)。

邏輯運算操作數(shù)和結果只有true和false兩種情況,運算符只有與(&&)或(||)非(!)三類。

最佳實踐
三種運算的計算優(yōu)先級從高到低依次是:算術、關系和邏輯。通常使用小括號()來更改和明確計算的優(yōu)先級。


小結

類型 運算符 操作數(shù)類型 結果類型
算術 + - * / % 數(shù)字 數(shù)字
關系 == != > >= < <= 數(shù)字、字符串 布爾
邏輯 && ! 布爾 布爾

數(shù)學運算、關系運算和邏輯運算是計算機三大運算方式,計算機的一切行為都是建立在這個三個運算上的。


JS特殊的加號+

  • 加號兩邊都是純數(shù)字的就是求和。
  • 加號兩邊只要有一個是文字就是字符串連接。

控制流程

順序

默認就是順序

分支

二選一

if(條件){
        代碼    
}

條件是布爾值,如果條件是true,執(zhí)行代碼,反之條件是false,不執(zhí)行代碼。

if(條件){
        代碼1    
}else{
        代碼2   
}

條件是布爾值,如果條件是true,執(zhí)行代碼1,反之條件是false,執(zhí)行代碼2

例子

var res = confirm("真的要退出嗎?"); 
if (res) { 
        document.write("已退出"); 
} else { 
        document.write("未退出");
}

多選一

if(條件1){
       代碼1    
}else if(條件2)
       代碼2   
}else{
       代碼3  
}

例子代碼一

var count = prompt("請輸入賬號?");
var res = prompt("請輸入密碼?");
if (count == "張三" && res == "abcde") {
      document.write("歡迎張三");
} else if (count == "李四" && res == "123456") {
      document.write("歡迎李四");
} else {
      document.write("賬號密碼錯誤");
}

例子代碼二

// 判斷幾月份有幾天?
var month = prompt("請輸入月份?");
if(month == 1){
    document.write(31);
}else if(month == 2){
    document.write(28);
}else if(month == 3){
    document.write(31);
}else if(month == 4){
    document.write(30);
}else if(month == 5){
    document.write(31);
}else if(month == 6){
    document.write(30);
}else if(month == 7){
    document.write(31);
}else if(month == 8){
    document.write(31);
}else if(month == 9){
    document.write(30);
}else if(month == 10){
    document.write(31);
}else if(month == 11){
    document.write(30);
}else if(month == 12){
    document.write(31);
}else{
    document.write("月份必須是1到12");
}

例子代碼二

var month = prompt("請輸入月份?");
if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12){
    document.write(31); 
}else if(month == 2){
    document.write(28); 
}else if(month == 4 || month == 6 || month == 9 || month == 11){
    document.write(30); 
}else{
    document.write("月份必須是1到12");
}

switch-case-break-default

switch(變量){
case 常量:
        代碼
     break;
case 常量:
        代碼
     break;
default:
     代碼
}
switch(month){
    case "1":
        days = 31; 
        break;                  
    case "2":
        days = 28; 
        break;            
    case "3":
        days = 31; 
        break;            
    case "4":
        days = 30; 
        break;            
    case "5":
        days = 31; 
        break;            
    case "6":
        days = 30; 
        break;            
    case "7":
        days = 31; 
        break;            
    case "8":
        days = 31; 
        break;            
    case "9":
        days = 30; 
        break;            
    case "10":
        days = 31; 
        break;           
    case "11":
        days = 30; 
        break;            
    case "12":
        days = 31; 
        break;
    default:
        document.write("月份必須是1到12");
}
document.write(month+"月份有"+days+"天");

循環(huán)

while(條件){代碼}

if區(qū)別

  1. 沒有else
  2. 條件為true,執(zhí)行代碼[再判斷],條件為false不執(zhí)行代碼
        var password = prompt("請屬于密碼?");
        while(password!="abcd"){
            password = prompt("密碼錯誤,請重新屬于密碼?");
        }
        document.write("密碼正確");

常量

  • 數(shù)字number
  • 字符串string
  • 布爾 boolean(true false)

變量三要素
1.變量名
2.變量值
3.變量類型

變量變量 變量名 變量值 變量類型
var str = "1234"; str "1234" string
var num = 1234; num 1234 number
var b = true; b true boolean

怎么判斷一個變量是什么類型

typeof month;

函數(shù)(function)

定義

  • 基本模板
function 函數(shù)名(參數(shù)1,參數(shù)2){代碼}

參數(shù)和函數(shù)名可以沒有但是關鍵字function和大小括弧不能缺少。最簡單的函數(shù)定義如下:

function(){代碼}
  • 返回值使用return

使用

  • 基本模板
var 返回值 = 函數(shù)名(參數(shù)1,參數(shù)2);

函數(shù)可以沒有返回值,也可以沒有參數(shù)。但是函數(shù)調(diào)用必須使用函數(shù)名和小括弧。下面是最簡單的函數(shù)。

函數(shù)名();

函數(shù)是否有參數(shù),有幾個參數(shù),是否有返回值完全由函數(shù)定義決定的。

  • 函數(shù)三要素:函數(shù)名、參數(shù)和返回值。

對象(object)

對象是多個屬性和多個方法組成。

  • 對象屬性本質上是變量
  • 對象方法本質上是函數(shù)

對象調(diào)用屬性

對象名.屬性名

例如:element.value
對象調(diào)用方法

對象名.方法名(參數(shù)1,參數(shù)2);

例如:document.write("abc");

事件(event)

事件一般是鼠標點擊拖拽或者鍵盤按鍵,自動調(diào)用JS代碼(函數(shù))。

根基語法是最根本的語法,如同數(shù)學中的1+1=2,英語中的abc,是程序最基礎的概念。更多是知道如何寫如何用。


未完待續(xù)

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 一、php可以做什么 php是一種可以在服務器端運行的編程語言,可以運行在Web服務器端。 php是一門后臺編程語...
    空谷悠閱讀 3,277評論 4 97
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young閱讀 4,190評論 1 10
  • 機械硬盤和固態(tài)硬盤 機械硬盤:傳統(tǒng)硬盤,優(yōu)勢是價格 固態(tài)硬盤:新一代硬盤,優(yōu)勢是讀取和寫入速度快,缺點是價格較高 ...
    WJustHM閱讀 447評論 0 0
  • 我是一個愛看書的人,在大上海,這座燈紅酒綠,充滿著誘惑和有著無限可能的大都市,對我最有有吸引力的事,那每個區(qū)都有的...
    和小白的約定閱讀 1,101評論 0 1
  • 昨日他山礦,今朝殿上衣。 萬千香火像,悵恍化塵微。
    秋風起花香閱讀 119評論 4 4

友情鏈接更多精彩內(nèi)容