有一种简单的方法可以从一个Google Apps脚本拨打电话到另一个吗?
我正在写两个脚本,一个应该使用另一个脚本的功能.我希望这两个人拥有不同的共享权限,所以我不想把它们放在同一个项目中.
我似乎无法在文档中找到任何"require Xxx.gs"类型函数.
我发现了这个: 从另一个"类"/文件中调用函数
但是如果我尝试从不同的文件调用函数,我会得到"xxx function not found"错误.
在下面的代码片段中,我Foo#bar用一个define_method块来修补补丁.初始化一个新实例后Foo,我通过bind调用父类bar方法覆盖它,但是当我调用该方法时,调用该块定义的define_method块.为什么bind调用不会改变方法的行为?
class OriginalFoo
def bar
puts 'in OriginalFoo!'
end
end
class Foo < OriginalFoo
def bar
puts 'in Foo'
end
end
class Foo < OriginalFoo
old_bar = instance_method(:bar)
define_method(:bar) do
puts 'in define_method block'
old_bar.bind(self).call
end
end
foo_instance = Foo.new # => #<Foo:0x00007fe3ff037038>
OriginalFoo.instance_method(:bar).bind(foo_instance) # => #<Method: OriginalFoo#bar>
foo_instance.bar
# >> in define_method block
# >> in Foo
Run Code Online (Sandbox Code Playgroud) 我有一个关于Ruby循环的基本问题.
写入的程序返回第i个素数+1(即示例应返回17).我知道我可以简单地返回cand-1,但我想知道检查在while循环底部是否找到答案的"Ruby方式"是什么,只有在没有的情况下才增加.
def ith_prime(i)
pI = 0 # primes index
divs = []
cand = 2
until pI == i do
if divs.find { |div| cand%div == 0 } == nil
divs << cand
pI += 1
end
cand += 1
end
cand
end
puts ith_prime(7)
> 18
Run Code Online (Sandbox Code Playgroud) 我有一个包含大量文件的目录,我需要按所有者分隔它们.我的直觉是管道ls输出mv,但我已经看到不建议这样做,因为文件名可能包含特殊字符.无论如何,我能想到的最接近的是:
ls -l | grep OWNER | find regex_for_filename | mv ../
但这不起作用.
注意 - 我对目录中的文件有一个可靠的正则表达式,但所有权分散.