1. 程式人生 > >Android開發人員不得不學習的JavaScript基礎(一)

Android開發人員不得不學習的JavaScript基礎(一)

操作符

在JavaScript中,有很多種操作符,算術操作符、賦值操作符、比較操作符以及邏輯操作符

1.1、算術操作符:

+-*/,除了加號(+)之外,其他都是按照四則運算大方式來進行,而加號(+)在字串中可以作為連線符來使用,這個和Java是一樣的。

摘自慕課網

1.2、賦值操作符:

=操作符不是等於,而是賦值操作

1.3、比較操作符:

操作符 描述
< 小於
> 大於
<= 小於等於
=
大於等於
== 等於(比較值是否相同)
=== 等於(比較值和值的型別是否相同)
!= 不等於(同==)
!== 不等於(同===)

JavaScript中的比較操作符的用法和Java是一樣的。但是需要注意的是表格中的=====的不同用法。

1.4、操作符優先順序:

算術操作符 > 比較操作符 > 邏輯操作符 > 賦值操作符;如果同級的運算是按從左到右次序進行,多層括號由裡向外。

陣列

在JavaScript中,定義一個數組是沒有型別的,也就是說可以往陣列中新增任何型別的資料。

1、定義

var myarray=new Array(); //沒有指定陣列的長度

var myarray= new Array
(8); //建立一個長度為8的陣列

注意:

  • 建立的新陣列是空陣列,沒有值,如輸出,則顯示undefined。
  • 雖然建立陣列時,指定了長度,但實際上陣列都是變長的,也就是說即使指定了長度為8,仍然可以將元素儲存在規定長度以外。

2、陣列長度屬性

使用array.length屬性來獲取陣列的長度,因為陣列的索引總是由0開始,所以一個數組的上下限分別是:0和length-1;同時,在JavaScript中陣列的length屬性是可變的。

3、二維陣列

在JavaScript中,二維陣列用myarray[x][y]來表示,宣告二維陣列有兩種方式:

方式一:

var myarr=new
Array(); //先宣告一維 for(var i=0;i<2;i++){ //一維長度為2 myarr[i]=new Array(); //再宣告二維 for(var j=0;j<3;j++){ //二維長度為3 myarr[i][j]=i+j; // 賦值,每個陣列元素的值為i+j } }

方式二:

var Myarr = [[0 , 1 , 2 ],[1 , 2 , 3]]

函式

在JavaScript中,函式的使用需要注意以下幾點事項:

1、函式呼叫

方式一:在JS程式碼中直接呼叫

<script>
    var sum;
    function add2(){
        sum = 3 + 2;
        alert(sum);
    }
    add2();
</script>

方式二:在HTML標籤中呼叫

<script>
    var sum;
    function add2(){
        sum = 3 + 2;
        alert(sum);
    }
</script>

<body>
    <input type="button" value="按鈕" onclick="add2()" />
</body>

2、函式引數

2.1、無參:

<script>
    var sum;
    function add2(){
        sum = 3 + 2;
        alert(sum);
    }
</script>

2.2、有參

<script>
    var sum;
    function add2(x,y){
        sum = x + y;
        alert(sum);
    }
</script>

注意:有參函式中,引數型別是沒有型別的(好隨意的語言啊>_<)

3、函式返回值

這裡需要注意的是,在JavaScript中,函式的定義是沒有返回值型別這一說的,不像Java裡面,任何一個函式都需要指明返回值型別。

<script>
    var sum;
    function add2(x,y){
        sum = x + y;
        return sum;
    }
</script>

上面的函式中,你為它增加一條return語句,它就是一個有返回值的函數了,如果去掉return語句,那麼它就是一個無返回值的函式(不得不又說一句,JS真隨意!!!)

事件

JavaScript 建立動態頁面。事件是可以被 JavaScript 偵測到的行為。 網頁中的每個元素都可以產生某些可以觸發 JavaScript 函式或程式的事件。

事件 說明
onclick 滑鼠單擊事件
onmouseover 滑鼠經過事件
onmouseout 滑鼠移開事件
onchange 文字框內容改變事件
onselect 文字框內容被選中事件
onfocus 游標聚集
onblur 游標離開
onload 網頁匯入
onunload 關閉網頁

物件

在JavaScript中也是有物件這一說的,和Java中的物件差不多。JavaScript中的所有事物都是物件,如:字串、數值、陣列、函式等,每個物件帶有屬性和方法。

物件的屬性:反映該物件某些特定的性質的,如:字串的長度、影象的長寬等;

物件的方法:能夠在物件上執行的動作。例如,表單的“提交”(Submit),時間的“獲取”(getYear)等;

1、Date物件

在JavaScript中,Date物件被用來儲存/獲取日期,該物件有以下方法/屬性:

方法名稱 功能描述
get/setDate() 返回/設定日期
get/setFullYear() 返回/設定年份,用四位數表示
get/setYear 返回/設定年份
get/setMonth 返回/設定月份0:一月 … 11:十二月,所以要加1
get/setHours 返回/設定小時 24小時制
get/setMinutes() 返回/設定分鐘
get/setSeconds() 返回/設定秒
get/setTimes() 返回/設定時間(毫秒單位)
getDay() 返回星期0:週一 … 6:週日

2、String物件

任何一門語言都離不開對String的操作,JavaScript也不例外,該物件有以下方法/屬性:

方法名稱 功能描述
String.charAt(1) 獲取字串中第1個位置的字元
String.indexOf(‘x’) 或取字元x在字串中第1次出現的位置,若沒找到,返回-1
String.charAt(1) 獲取字串中第1個位置的字元
String.split(separator,limit) 第一個引數是字串分割的參照字元,第二個引數表示最多切割多少次,可以不設定,該方法返回的是一個數組
String.substring(start,end) 第一個引數表示開始位置,第二個引數表示結束位置,可省略,返回的是從start到end-1位置的子串
String.substr(start,length) 第一個引數表示開始位置,第二個引數表示裁剪幾個字元,可省略,返回的是從start到start+length位置的子串

3、Math物件

在JavaScript,Math物件提供對資料的數學計算。Math物件中有屬性,也有方法,以下是Math物件中的屬性:

屬性名稱 功能描述
E 返回算數常量e,即自然對數的底數(約為2.718)
LN2 返回2的自然對數(約等於0.693)
LN10 返回10的自然對數(約等於2.302)
LOG2E 返回以2為底E的對數(約等於1.442)
LOG10E 返回以10為底E的對數(約等於0.434)
PI 返回圓周率(約等於3.14159)
SQRT1_2 返回2的平方根的倒數(約等於0.707)
SQRT2 返回2的平方根(約等於1.414)

在JavaScript中,Math物件有以下方法:

屬性名稱 功能描述
abs(x) 返回x的絕對值
acos(x) 返回x的反餘弦值
asin(x) 返回x的反正弦值
atan(x) 返回x的反正切值
atan2(y,x) 返回x軸到點(x,y)的角度(以弧度為單位)
ceil(x) 對x進行上舍入(向上取整)
floor(x) 對x進行下舍入(向下取整)
sin(x) 返回x的正弦值
cos(x) 返回x的餘弦值
tan(x) 返回x的正切值
exp(x) 返回e的x次冪
log(x) 返回x的自然對數(底為e)
max(x,y) 返回x和y中的最大值
min(x,y) 返回x和y中的最小值
pow(x,y) 返回x的y次冪
random() 返回0-1之間的隨機數
round(x) 返回x的四捨五入值
sqrt(x) 返回x的平方根

4、陣列Array物件

陣列在上面已經介紹過了,就不再做過多的介紹了,下面來看看JavaScript中陣列的一些方法以及屬性:

屬性/方法名稱 功能描述
Array.length 返回陣列長度
Array.contact(arr1,…arrn) 連線兩個或多個數組並返回一個最終的陣列
Array.join(seprator) 把陣列的所有元素放入一個字串,元素通過指定的字元seprator進行連線,返回一個字串
Array.pop() 刪除並返回陣列的最後一項
Array.push(x1,…xn) 向陣列的末尾新增一個或更多元素,並返回新陣列的長度
Array.reverse() 顛倒陣列中元素的順序並返回一個數組
Array.shift() 刪除並返回陣列中的第一個元素
Array.slice(start,end) 從某個已有的陣列返回選定元素,第一個引數表示從start處開始到end處結束,如果start為-1,那麼從倒數第一個元素開始,以此類推,返回一個子串
Array.sort(function) 對元素進行排序操作,並返回一個數組,引數是可選的,但是必須是一個函式(升序,降序)
Array.splice(index,howmaney,item1…itemn) 刪除元素,並向陣列新增新的元素,第一個引數表示在陣列中刪除/新增的位置,第二個引數表示需要刪除的元素的數量,後面是新增的引數
Array.toString() 把陣列轉化為字串並返回

公眾號:IT先森養成記