Tôi đang làm việc trên một hàm array_merge cho ASP cổ điển. Những gì tôi có vẻ là làm việc, cho đến khi một (hoặc cả hai) params có sản phẩm nào hoặc không mảng. Dưới đây là những gì tôi có cho đến nay:Mảng hợp nhất trong ASP cổ điển
function array_merge(left, right)
dim total_size
dim i
dim merged
' Convert "left" to an array
if not isArray(left) then
left = Array(left)
end if
' Convert "right" to an array
if not isArray(right) then
right = Array(right)
end if
' Start with "left" and add the elements of "right"
right_size = ubound(right)
total_size = ubound(left) + right_size + 1
merged = left
redim preserve merged(total_size)
for i = 0 to ubound(right)
merged(right_size + i + 1) = right(i)
next
' Return value
array_merge = merged
end function
tôi nhận được lỗi:
Error Type: Microsoft VBScript runtime (0x800A01B6) Object doesn't support this property or method: 'merged' /_inc/nav/left-nav.inc, line 21
Từ dòng merged(right_size + i + 1) = right(i)
. Bất kỳ sự khôn ngoan nào về nơi tôi đang đi sai?
Đầu vào khi bạn gặp lỗi đó là gì? –
Chỉ cần ném này ra khỏi đó - 'LEFT' và' RIGHT' là chức năng trong VBScript. Có thể là mã thực sự là barfing trên 'right (i)'? Bạn có thể muốn thay đổi tên tham số của hàm. – LittleBobbyTables