タイトルが正しいかどうかわかりませんが、私がやっていることは、このようなことをするアルゴリズムを見つけることです。したがって、アルファベットの終わりまでの['a'、 'b'、 'c'、 'd'、...]、およびシフトする数字のような入力配列があります。私はシフトするために3番目の番号を持っているなら、['x'、 'y'、 'z'、 'a'、 'b'、 'c' ...]のような配列を出力する必要があります。 それを行う方法に関するアイデアはありますか? 私が試した:[x,y,z,a,b,c...]
シフト配列をjavascriptで前方に移動する
for(var i = 0; i < number; i++){
arr.unshift(arr.pop());
}
での結果:それは[d,e,f ... a,b,c]
for(var i = 0; i < number; i++){
arr.push(arr.shift());
}
としては、この(感謝@dtkaias)を行い、コメントで指摘印刷さ以外
function solve(args)
{
let arr = ['a', 'b', 'c', 'd'];
let number = 3;
for (let i = 0; i < arr.length; i++)
{
if (typeof arr[i + 1] === undefined)
{
arr[0] = arr[i];
}
else if (typeof arr[i - 1] === undefined)
{
arr[arr.length - 1] = arr[0];
}
else
{
arr[i] = arr[i + 1];
}
}
console.log(arr);
}
[JavaScriptで環状に配列にアクセスする方法(http://stackoverflow.com/questions/17483149/how-to-access-array-in-circularの可能な重複-manner-in-javascript) – rlemon
これは、配列をシフトしないで* rotate *しています。 –