1. 程式人生 > >前端--3、JavaScript

前端--3、JavaScript

數字 默認 情況 function con cname prompt info def

  • 引入方式:
    • 直接在HTML中寫入(了解)
    • 寫到文件中引入
  • 聲明變量
    • 變量賦值方式
    • 單個變量賦值
    • 多變量的變量賦值
  • 數據類型
    • 數字and字符串
    • boolean
    • undefined
    • 數據類型的存儲
    • 數組
    • 對象
  • JS的解釋方式
  • 運算符
  • 字符串的拼接 用+號
  • NaN
  • 流程控制語句
    • if-else if-else
    • 循環
  • 函數
  • 匿名函數
  • BOM
    • alter(info)
    • confirm(info)
    • prompt()

引入方式:

除了Python外其他語言都沒有要求強制縮進。即JS對縮進無要求,只要符合語法即可。
示例中的alter為彈框

#單行註釋
//  
#多行註釋
/*
    註釋
*/

直接在HTML中寫入(了解)

<script>
    //第一行JS
    alter(123)
</script>

寫到文件中引入

<script src="demo.js" ></script>

聲明變量

變量賦值方式

var關鍵字聲明一個字符串是變量。
再給定義的這個變量賦值。

單個變量賦值

<script>
var name;
name="yudong"
</script>
#可以簡寫為:
var age=3;

多變量的變量賦值

默認以換行符作為作為語句分隔符。也可使用分號作為語句的分隔符

var name="heling"; var age=18

數據類型

打印到屏幕終端。

數字and字符串

// console.log 輸出打印到屏幕終端
// typeof 查看數據的數據類型
i=1
f=1.1
s="study"
console.log(i,typeof i);
//number
console.log(f,typeof f);
//number
console.log(s,typeof s);
//string
//不區分數字和浮點型

boolean

有兩個值,truefalse。邏輯判斷
可以理解為數字類型的。TrueFalse01。可用於數字運算

undefined

只有一個值,undefined

遇到這個值的兩種情況

  • 變量只聲明,未賦值。
  • 當一個函數沒有返回值的時候。

數據類型的存儲

引用數據類型全部存在堆裏。棧裏存的都是基礎數據類型。
堆裏存的都是棧的內存地址。

數組

可以把多個數據存入其中。
C等語言在聲明數組時要聲明存儲的數據類型

創建方式1:
var arrname = [元素0,元素1,….];          // var arr=[1,2,3];

創建方式2:
var arrname = new Array(元素0,元素1,….); // var test=new Array(100,"a",true);

創建方式3:
var arrname = new Array(長度); 
            //  初始化數組對象:
                var cnweek=new Array(7);
                    cnweek[0]="星期日";
                    cnweek[1]="星期一";
                    ...
                    cnweek[6]="星期六";

對象

映射關系的數據結構。 鍵加不加引號都可以

var obj = {"Q":"Z"}

可以使用字典的基本操作,如取key的value:obj["Q"]

數組和對象的數據類型都是object。

JS的解釋方式

JS先讀完整個文件,才開始執行。所以變量的使用可以寫在該變量聲明的上面。

運算符

#++ --
var i = 1;
i++
console.log(i)

#==
console.log(2=="2")
//返回時true,他在有一端是數字時另一端也會轉換成數字> 
#===
//不會轉換數據類型,數據類型也必須一樣。

#邏輯運算符,與 非
&& || !
真真為真,假假為假

字符串的拼接 用+號

NaN

轉換數據類型時(即將字符串轉換成數字類型)失敗了會得到該類型。

流程控制語句

  • 分支控制語句 if
  • 循環控制語句 for while

JavaScript中使用{}來確認語句塊(即滿足條件時執行的語句體)。而Python中是使用:和縮進。

if-else if-else

if (表達式1) {
    語句1;
}else if (表達式2){
    語句2;
}else if (表達式3){
    語句3;
} else{
    語句4;
}

循環

  • 遍歷循環 for
  • 條件循環 while JavaScript中都是條件循環。條件不滿足就退出

詳細見圖片。

支持break 和 continue

js中的序列類型用.length都可以得到長度

函數

function funcname(參數) {
    return X;
}

調用時可以傳入任意數量的參數,它只接受固定數量的。
接受任意長度的 。
arguments 通過數組,獲取所有傳入的參數

匿名函數

// 匿名函數
    var func = function(arg){
        return "tony";
    }

// 匿名函數的應用
    (function(){
        alert("tony");
    } )()

    (function(arg){
        console.log(arg);
    })(‘123‘)

BOM

window 是全局變量,調用時可以不用加window名,alter就是它裏面的方法。

alter(info)

用於警告信息,只有確定

confirm(info)

顯示帶有一段消息以及確認按鈕和取消按鈕的對話框。 有返回值

prompt()

顯示可提示用戶輸入的對話框。 有返回值

每一個標簽都是一個對象

前端--3、JavaScript