假设我需要输入X个字符串。每个字符串的字母必须用一个具有以下模式名称的变量分隔:(PositionOfTheCharacterInTheString)+String+(OrdinaryPositionOfTheString)
。
例如,我们有字符串:
调用时我需要一个函数来创建以下变量:
1String1="A"
2String1="B"
3String1="C"
1String2="X"
2String2="Y"
3String2="Z"
1String3="H"
2String3="I"
3String3="J"
我将如何去做?
我还想知道如何通过函数变量来生成名称为“ 1”,“ 2”,“ 3” ...和“ A”,“ B”,“ C”,“ D”的变量。 。
谢谢。
确实没有理由这样做。 JavaScript不支持变量变量。也许您想做的是:
function Organizer(){
const a = [];
for(let i=0,s,l=arguments.length; i<l; i++){
a.push([]);
}
a.forEach((v, i)=>{
s = arguments[i].split('');
s.forEach((r, q)=>{
a[q].push(r);
});
});
this.getArray = ()=>{
return a;
}
this.getWeird = fakeVar=>{
const s = fakeVar.split(/string/i);
return a[s[0]-1][s[1]-1];
}
}
const org = new Organizer('ABC', 'XYZ', 'HIJ');
console.log(org.getWeird('3String2'));
console.log(org.getWeird('2String3'));
当然,我只使用数组访问。