1 Javascript陣列轉換為CSV格式
首先考慮如下的應用場景,有一個Javscript的字元型(或數值型)陣列,現在需要轉換為以逗號分割的CSV格式檔案。則我們可以使用以下的小技巧,程式碼如下:
var fruits = ['apple', 'peaches', ' 'oranges', 'mangoes'];
var str = fruits.valueOf();
輸出:apple,peaches,oranges,mangoes
其中,valueOf()方法會將Javascript陣列轉變為逗號隔開的字串。要注意的是,如果想不使用逗號分割,例如用|號分割,請使用join方法,如下:
var fruits = ['apple', 'peaches', ' 'oranges', 'mangoes'];
var str = fruits.join("|");
輸出: apple|peaches|oranges|mangoes
2 將CSV格式重新轉換回Javscript陣列
那麼如何將一個CSV格式的字串轉換回Javascript陣列呢?可以使用split()方法,就可以使用任何指定的字元去分隔,程式碼如下:
var str = "apple, peaches, oranges peaches, oranges angoes" ;
var fruitsArray = str.split(",");
輸出 fruitsArray[0]: apple
3 依照索引移除陣列中的某個元素
假如需要從Javascript數組中移除某個元素,可以使用splice方法,該方法將根據傳入參數n,移除數組中移除第n個元素(Javascript數組中從第0位開始計算) 。
function removeByIndex(arr, index) }
test = new Array();
test[0] = 'Apple';
test[1] = 'Ball';
test [2] = 'Cat';
test[3] = 'Dog';
alert("Array before removing elements: " test);
removeByIndex(test, 2);
alert( "Array after removing elements: " test);
則最後輸出的為Apple,Ball,Dog
4 根據元素的值移除陣列元素中的值
下面這個技巧是很實用的,是根據給定的值去刪除數組中的元素,程式碼如下:
function removeByValue(arr (var i=0; i
if(arr[i] == val) {
}
}
}
var somearray = ["mon", "tue", "wed", "thur"]
removeByValue(somearray, "tue");
//somearray 將會有的元素是"mon", "wed", "thur"
當然,更好的方式是使用prototype的方法去實現,如下程式碼:
複製程式碼
程式碼如下:Array.prototype.removeBvaly) 🎜> for(var i=0; i
if(this[i] == val) { break;
}
}
}
//..
var somearray = ["mon", "tue", "wed", "thur"]
5 透過字串指定的方式動態呼叫某個方法
有的時候,需要在執行時,動態呼叫某個已經存在的方法,並為其傳入參數。這個如何實現呢?下面的程式碼可以:
複製程式碼
程式碼如下:
var strFun = "someFunction"; //someFunction 為已經定義的方法名稱
var strParam = "this is the parameter"; //要傳入方法的參數
var fn = window [strFun];
//呼叫方法傳入參數
fn(strParam);
6 產生1到N的隨機數
var random = Math.floor(Math.random() * N 1);
//產生1到10之間的隨機數
var random = Math.floor(Math.random() * 10 1);
//產生1到100之間的隨機數
var random = Math.floor(Math.random() * 100 1);
7 捕捉瀏覽器關閉的事件
我們常常希望在使用者關閉瀏覽器的時候,提示使用者要儲存尚未儲存的東西,則下面的這個Javascript技巧是十分有用的,程式碼如下:
………