Tags:

พอดีว่าผมไม่ค่อยแข็งแรงกับ JS ที่เป็น object ครับ คือ code ด้านล่างนี้เขาสร้าง js object ที่ชื่อว่า playList ขึ้นมา
แล้วถ้าผมต้องการ วนลูปด้วย for เพื่อเอาค่าจาก url ที่ไปอ่านมา ผมต้องเขียน for ประมาณไหนครับ เพราะผมลองใช้
this.playList[2].title = "ข่าว 4";
this.playList[2].url = 'http://www.a.com/vdo/4.mp4'

ปรากฏว่า error undefined ครับ เลย อยากขอคำแนะนำหน่อยครับ

this.playList = [{
url: 'http://www.a.com/vdo/7.mp4',
title: 'VDO 1',
},{
url: 'http://www.a.com/vdo/3.mp4',
title: 'VDO 2'
}];

Get latest news from Blognone
By: soginal
AndroidIn Love
on 27 May 2013 - 17:59 #578658
soginal's picture

ถ้าต้องการแก้ไข index เริ่มที 0 ครับ คุณใส่ 2 ลงไปก็ undefined

แต่ถ้าหมายถึงเพิ่มข้อมูลเข้าไปต้องใส่ไปทั้ง objectครับ
this.playList[2] = { url='', title='' }

By: kajokman
ContributorAndroidIn Love
on 27 May 2013 - 19:06 #578676
kajokman's picture

this.playList[2] = {};
this.playList[2].title = "ข่าว 4";
this.playList[2].url = 'http://www.a.com/vdo/4.mp4'

By: cloverink
iPhoneAndroidUbuntuWindows
on 27 May 2013 - 20:47 #578704
cloverink's picture

this.playList.push({
url: '...',
title: '...'
});

By: suwatchai on 27 May 2013 - 23:00 #578747

var i=0;
for( var playListItem in this.playList )
{
alert ("Item " + i + ", url= " + this.playList [playListItem].url+ ", title= " + this.playList [playListItem].title);
i++;
}

By: khao_lek on 28 May 2013 - 11:25 #578893

ขอบคุณทุกๆ ท่านมากครับ

By: natajrak
iPhoneWindows PhoneAndroidBlackberry
on 1 June 2013 - 02:02 #580821
natajrak's picture

for(var i = 0; i < this.playList.length; i ++)
{
alert ("Item " + i + ", url= " + this.playList [i].url+ ", title= " + this.playList [i].title);
}

ก็ได้นะครับ