我正在尝试在Codewars上解决challenge,这需要您在JavaScript中反转数组,不超过16个字符。使用.reverse()
不是一种选择。
代码中允许的最大字符数为28,其中包含函数名weirdReverse
,因此只需要16个字符即可解决。限制 -
您的代码需要尽可能短,实际上不超过28个字符
示例输入和输出 -
输入:包含任何类型数据的数组。例如:
[1,2,3,'a','b','c',[]]
输出:
[[],'c','b','a',3,2,1]
给出的起始码是 -
weirdReverse=a=>
我的解决方案( 29 字符)是 -
weirdReverse=a=>a.sort(()=>1)
当然失败了 -
代码长度应小于或等于28个字符。
您的代码长度= 29 - 预期:'代码长度< = 28',而不是:'代码长度> 28'
我不确定还有什么要截断。
注意 - 我确实考虑过在CodeGolf SE上发布这个问题,但由于范围有限,我觉得它不适合那里。
答案 0 :(得分:4)
我想在不给你答案的情况下给你一个提示:
您已关闭,但您可以使用而不是使用您需要在代码中添加的内容来保存字符。
通过添加您赢得使用的内容,您可以删除()
。
剧透(答案):
// Note: this only really works for this specific case.
// Never EVER use this in a real-life scenario.
var a = [1,2,3,'a','b','c',[]]
weirdReverse=a=>a.sort(x=>1)
// ^ That's 1 character shorter than ()
console.log(weirdReverse(a))