close

1.使用Array

var myVar = new Array();

var people = new Array(‘fred’,’Melo’);//字串記得用’’包起來

 

2.性能

基於性能原因最好別將迴圈與array.length直接做比較,而是應該將array長度給另一變數,在跟這變數做比較。

var myArray = new Array(123,456);

var ArrayLen = myArray.length();

for (var i=0;i<ArrayLen;i++)

{

console.log(i);

}

 

3.刪除陣列元素

delete arrayName[0];

注意刪除元素陣列長度並不會減少,而是會用 ’Undefined’ 來填這個被刪除的洞

 

4.新增陣列元素 push

var fruits = ["Banana", "Orange", "Apple", "Mango"];

fruits.push("Kiwi", "Lemon", "Pineapple");

The output of the code above will  be:Banana,Orange,Apple,Mango,Kiwi,Lemon,Pineapple

 

5.字串與陣列之轉換join

var people = [‘melo’,’melo2’];

var gang = people.join(‘ - ’)

console.log(gang); //melo-melo2字串


 

6.使用物件

JS和其他OO語言最大不同是不用定義類別。

JS是從物件property模型物件繼承而來。

建立物件:

var me = {

name: ‘Melo Tang’,

age:42,

car:{

make:'BMW',

model : large

}

}

 

7.存取物件屬性

var chapter ={

num:6,

title: ‘complex var type’

};

chapter.num; //6

 

建立物件後可以對其屬性改值

chapter.title = ‘I want to cahnge it’;

 

如果屬性不存在物件內,則是新增此屬性

chapter.newVar = ‘melo’;

 

判斷某屬性是否已經存在物件內:in關鍵字

if('startPage' in chapter)//此屬性已經存在

{}

 

8.JS中可變物件(複雜類型)和不可變物件(簡單類型)

複雜類型:Date,Array,Object

這類型又稱可變物件,隨時可以修改值。

簡單類型:bool,int…

若要修改值,JS會摧毀舊的產生一個新的在將值指派配給他。

9.刪除Object中的property(delete關鍵字)

delete obj.property;

delete chapter.title;

 

10.Array和Object的比較

JS中Array,bool,strnig….都是物件。

何時該使用array何時該使用object。

在Larry Ullman的書中提出以下建議:

Arry在以下情形較為適合:

  • 值的儲存順序很重要

  • 值可以為數值型的index

  • 可能需要很快得知存了多少值

  • 需要排序,物件無法排序

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 melomelo1988 的頭像
    melomelo1988

    melo 唐

    melomelo1988 發表在 痞客邦 留言(0) 人氣()