ক্লাসিক অ্যাসপি ভিবিস্কির একটি অ্যারের মাধ্যমে পুনরাবৃত্তির সেরা উপায় কী?

নীচের কোড

For i = LBound(arr) To UBound(arr)

LBound ব্যবহার করে জিজ্ঞাসা করার সময়টি কী? অবশ্যই যে সবসময় 0

0

5 উত্তর

সম্ভবত এটি VB6 থেকে আসে। কারণ VB6 এ অপশন বেস বিবৃতিতে, আপনি এই মত নিম্ন বায়ু বর্ধিত করতে পারেন:

Option Base 1

এছাড়াও VB6 মধ্যে, আপনি এই মত একটি নির্দিষ্ট অ্যারের নিম্ন আবদ্ধ পরিবর্তন করতে পারেন:

Dim myArray(4 To 42) As String
0
যোগ

কেন প্রতিটি এর জন্য ব্যবহার করবেন না? এইভাবে আপনি LBound এবং UBound কি কি যত্ন নেওয়ার প্রয়োজন নেই।

Dim x, y, z
x = Array(1, 2, 3)

For Each y In x
    z = DoSomethingWith(y)
Next
0
যোগ
আপনি প্রতিটির সরাসরি এন্ট্রির সেল সম্পাদনা করতে ব্যবহার করতে পারবেন না, যেহেতু y আপনার উদাহরণে অ্যারে সেলের একটি অনুলিপি, এটির রেফারেন্স নয় অ্যারে এডিটিংয়ের জন্য, i = lbound (arr) এর জন্য Ubound (arr) এক arr (i) এবং cell বিষয়বস্তু সম্পাদনা করে (যেমন < কোড> আর্ম (i) = ট্রিম (আর্ম (i)) )।
যোগ লেখক Micha? Sacharewicz, উৎস

আমি সবসময় প্রতিটি জন্য ব্যবহার করা হয়েছে ...

0
যোগ

LBound may not always be 0.

এটি একটি অ্যারে তৈরি করা সম্ভব নয় যা VBScript- এ একটি লোয়ার বাইবেলের ব্যতীত অন্য কিছু আছে, এটি একটি COM কম্পোনেন্টের একটি অ্যারের পুনরুদ্ধার করা সম্ভব যা হয়তো একটি ভিন্ন LBound নির্দিষ্ট করতে পারে

যে বলেন যে আমি যে কেউ যে মত কিছু করা হয়েছে কখনও আসে না।

0
যোগ

There is a good reason to NOT USE For i = LBound(arr) To UBound(arr)

dim arr(10) allocates eleven members of the array, 0 through 10 (assuming the VB6 default Option Base).

অনেক VB6 প্রোগ্রামাররা অ্যারের এক ভিত্তিক অনুমান, এবং বরাদ্দ arr (0) ব্যবহার করবেন না। বা i = 0 থেকে Ubound (arr) এর জন্য = i এর জন্য i = 1 ব্যবহার করে বাগগুলির সম্ভাব্য উত্সটি সরিয়ে ফেলতে পারি, কারণ এটি স্পষ্ট কিনা arr (0) ব্যবহার করা হচ্ছে।

For each makes a copy of each array element, rather than a pointer.

এর দুটি সমস্যা আছে

  1. When we try to assign a value to an array element, it doesn't reflect on original. This code assigns a value of 47 to the variable i, but does not affect the elements of arr.

    arr = Array(3,4,8)
    for each i in arr
         i = 47
    next i
    Response.Write arr(0) '- returns 3, not 47
  2. We don't know the index of an array element in a for each, and we are not guaranteed the sequence of elements (although it seems to be in order.)

0
যোগ