既然可以这样并行赋值,
x, y, z = [1, 2, 3]
我想知道是否可以删除 y
值。有没有一种方法可以在不污染当前作用域的命名空间的情况下进行并行赋值?
我尝试分配给 nil
:
x, nil, z = [1, 2, 3]
但这不起作用。
最佳答案
执行此操作的惯用方法是将其分配给名为下划线的变量:
x, _, z = [1, 2, 3]
如果要删除多个值,可以使用 splat:
x, *_, z = [1, 2, 3, 4, 5]
关于ruby - 在并行赋值中删除值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42509986/