JavaScript如何把最后的数组改到最前面?
How to change the final array to the front in JavaScript?
案例是:
function trocaPrimeiroEUltimo(array) {
array.array[0]
array.array[array.length - 1]
return array
}
我是这样操作的,但是没有用。我不能改变函数的结构,只能改变它里面的内容。有人可以帮帮我吗?
你想用第一个值替换最后一个值吗?
如果是这样,请执行:
temp = array[0]
array[0] = array[array.length-1]
array[array.length-1] = temp
这是一个简单的交换。
语法利用了新的 ES6 功能(解构数组)。这样就可以在没有临时变量的情况下完成交换。
整个事情甚至可以作为 one-liner:
const arr=[7,8,9,10,11];
const swapFirstLast=(a,l)=>([a[0],a[l]]=[a[l=a.length-1],a[0]],a);
console.log(swapFirstLast(arr))
参数 l
的使用也是您在“真实”应用程序中可能不会做的事情。我只是为了它而去,所以我不必在本地定义变量。 l
在赋值表达式的右侧赋值。到需要存储结果时 l
已经计算完毕,也可用于对正确的目标元素进行寻址。
案例是:
function trocaPrimeiroEUltimo(array) {
array.array[0]
array.array[array.length - 1]
return array
}
我是这样操作的,但是没有用。我不能改变函数的结构,只能改变它里面的内容。有人可以帮帮我吗?
你想用第一个值替换最后一个值吗? 如果是这样,请执行:
temp = array[0]
array[0] = array[array.length-1]
array[array.length-1] = temp
这是一个简单的交换。
语法利用了新的 ES6 功能(解构数组)。这样就可以在没有临时变量的情况下完成交换。
整个事情甚至可以作为 one-liner:
const arr=[7,8,9,10,11];
const swapFirstLast=(a,l)=>([a[0],a[l]]=[a[l=a.length-1],a[0]],a);
console.log(swapFirstLast(arr))
参数 l
的使用也是您在“真实”应用程序中可能不会做的事情。我只是为了它而去,所以我不必在本地定义变量。 l
在赋值表达式的右侧赋值。到需要存储结果时 l
已经计算完毕,也可用于对正确的目标元素进行寻址。