フィールドコードを配列に入れてループ処理をしたい

フォーム上にフィールドコードが「フラグ1」「フラグ2」…というようなフィールドが複数あるとして、
このフィールドの値を操作する場合、下記のようにフィールドコードの文字列を配列に入れて
ループ処理をしたいと考えています。
その場合、record.flag[i].valueというような書き方ですとエラーが表示されてしまいます。
別の書き方でフィールドを指定することはできますでしょうか。
それとも、こういう場合はループ処理はできず、一つずつフィールドコードを指定して書くしかないのでしょうか。
初心者のため基本的な事が理解できていない可能性があるため、その点を含め、ご指南いただけると幸いです。
よろしくお願い致します。

var flag = [‘フラグ1’, ‘フラグ2’, ‘フラグ3’, ‘フラグ4’, ‘フラグ5’, ‘フラグ6’, ‘フラグ7’, ‘フラグ8’, ‘フラグ9’, ‘フラグ10’];

for (var i = 0; i < flag.length; i++) {
record.配列のi番目のフィールドコード.value = “”;
}

 

bw38 さん

変数を使って値を取得する場合は、ドットで区切るのではなく、[] でくくってあげるといけますよ。

record[flag[i]]["value"]

record[flag[i]].value

で取得できます。

とりあえず、変数部分は、[] でくくってあげれば大丈夫です。

ドット記法、ブラケット記法 と言って、恐らく JavaScript の仕様となるので、

理由まではわからないのですが、若干意味が変わるみたいですね

しぶい様

ありがとうございます!
今確認して想定通りの処理ができました。
基本的な質問にお答えいただき本当にありがとうございます。
助かりました。