Skip to content

Instantly share code, notes, and snippets.

@MicroHank
Last active August 29, 2015 14:25
Show Gist options
  • Save MicroHank/1fc1e9721cbcd5e3d199 to your computer and use it in GitHub Desktop.
Save MicroHank/1fc1e9721cbcd5e3d199 to your computer and use it in GitHub Desktop.
$.each()、array.prototype.forEach()、sort(function)
這兩個函數皆能走訪陣列所有元素
(範例 1) JQuery 的物件,所以只能用 $.each(array, callback(index,element))。
var arr = [] ;
var li = $("#id option") ; // 取出所有 option element
$.each(li, function(index, element){
arr.push(element.innerHTML) ; // or element.outerText
}) ;
範例 1 備註:
<option value="1">第1</option><option value="2">第2</option><option value="3">第3</option>...
取得 value 屬性值:element.attributes[0].nodeValue ;
取得輸出文字內容第1,第2,第3:element.innerHTML
(範例 2) Javascript 的陣列,可以使用 $.each(array,callback(index,element)) 及 array.forEach(callback(element,index,array))
var arr = [] ;
var data = JSON.parse(json_string) ; //
data.forEach(function(element, index, array){
arr.push(element.user_name) ;
}) ;
sort(function)
物件陣列中,利用物件的屬性進行陣列的元素排序。
var obj = [] ;
obj[0] = {age:31, name:"John"} ;
obj[1] = {age:12, name:"May"} ;
obj[2] = {age:43, name:"Jack"} ;
obj[3] = {age:23, name:"Simpson"} ;
// 數字排序:利用 age 由小排至大
obj.sort(function(a,b){
return a.age - b.age ;
}) ;
// 字串排序:利用 name 由小排至大
obj.sort(function(a,b){
if (a.name < b.name) return -1 ; // sort string ascending
if (a.name > b.name) return 1 ;
return 0 ; // (no sorting)
}) ;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment