私は靴の変換関数を作成しようとしています...これがアイデアです:
- 米国の靴サイズ用と EU の靴サイズ用の 2 つの配列があります。
- 米国の靴のサイズと変換先の国を取り込む変換関数があります。
- この関数は、渡された靴のサイズを検索して、US 配列内のインデックスを見つけます。
次に、関数は見つかったインデックスを取得して、EU 配列内の同じインデックス位置にあるアイテムにアクセスします。
//Shoe size arrays var US = [3.5, 4, 4.5, 5, 5.5, 6, 6.5, 7, 7.5, 8, 8.5, 9, 9.5, 10, 10.5, 11, 11.5, 12, 13, 14, 15, 16]; var EU = [35, 35.5, 36, 37, 37.5, 38, 38.5, 39, 40, 41, 41.5, 42, 42.5, 43, 44, 44.5, 45, 46, 47, 48, 49, 50]; var currentsize = 6.5; var countrycode = 'EU'; convertShoeSize(currentsize, countrycode); function convertShoeSize(size, converto){ var sizelocation = $.inArray(size, US); console.log(size + ' is at index ' + sizelocation); console.log('going to ' + converto); console.log(typeof(converto)); console.log(typeof(EU)); //this is where I want the parameter to access the array //with the same name, so the EU array created at top var converted = converto[sizelocation]; console.log(converted); }
パラメータcountrycodeは文字列として入ってきます。その文字列を使用して、同じ名前の配列オブジェクトと一致させたいと思います(上記のコメント)。undefinedの結果を取得します。
私が使用する場合:
var converted = converto[1]
U を取得します。同様に、インデックス 0 を要求すると E が取得されます。つまり、EU 配列にアクセスしていないことがわかります。文字列を見ているだけです。
文字列パラメーターを取得して、同じ名前のオブジェクトと一致させるにはどうすればよいですか。
これは確かに基本的なことですが、オンラインのどこでも、過去数時間にわたって答えを見つけることができませんでした. 検索で間違った用語を使用していると想像してください。ありがとうございました!