我想删除一个对象的某些成员(为了参数,那些键以'_'开头).这是一种优雅的方式吗?天真的方式是:
for (var i in obj)
if (i[0] === '_')
delete obj[i];
Run Code Online (Sandbox Code Playgroud)
但是在迭代期间修改了底层对象.在Node中至少我想我可以
Object.keys(obj).forEach(function (i) { if (i[0] === '_') delete obj[i]; });
Run Code Online (Sandbox Code Playgroud)
每次用尴尬的嵌套循环删除某些内容时重启迭代.
还有更好的解决方案吗?
编辑:刚刚在测试中,至少在node.js中,天真的解决方案实际上似乎有效.当然(有必要)安全地实施...... in当然是可能的.谁知道?
(foo是源控制的)
$ rm -rf foo
$ p4 sync -f foo
$ ls foo
ls: cannot access foo: No such file or directory
$ p4 sync -f foo/...
$ ls foo
bar.txt
Run Code Online (Sandbox Code Playgroud) 我正在尝试渲染一个混合了全透明像素和完全不透明像素的纹理.看起来我唯一的选择就是将它们从后向前渲染(在所有完全不透明的多边形之后),因为即使是完全透明的像素也会更新深度缓冲区,但我不确定它是否准确.是吗?
似乎片段着色器可以被告知单独留下深度缓冲区用于透明像素,但显然不是.我错过了什么吗?
还有其他一些明智的方法来渲染高度不规则形状的图像,而不是我想不到的许多多边形吗?
我正在为 Web Audio API 合成器开发基于浏览器的修补界面。频率调制(将一个振荡器与另一个振荡器的频率挂钩)在 Chrome 中按预期工作。它应该是一种科幻声音,就像频率波动为30Hz的300Hz正弦波。
在 Safari(和 Mobile Safari)中,听起来只是低沉的隆隆声。听起来好像有FM,但基频不对。这是否只是浏览器的一个怪癖,将在未来的版本中得到解决?现在有解决办法吗?
这是视觉/交互版本:

http://forresto.github.com/dataflow-webaudio/
还有fiddle版本,用最少的代码演示效果:
http ://jsfiddle.net/FVaWL/28/
var mod, modGain, osc;
var out = context.destination;
var startTest = function(){
mod = context.createOscillator();
mod.frequency.value = 8;
modGain = context.createGain();
modGain.gain.value = 30;
osc = context.createOscillator();
osc.frequency.value = 300;
mod.connect(modGain);
modGain.connect(osc.frequency);
osc.connect(out);
osc.start(0);
mod.start(0);
};
var stopTest = function(){
osc.stop(0);
mod.stop(0);
mod = modGain = osc = null;
};
Run Code Online (Sandbox Code Playgroud) 检测 tvOS Siri Remote 上的某些按钮按下是相对简单的:暂停/播放按钮、触摸板区域,以及稍微多一点的MENU按钮。但是似乎无法检测或覆盖+和-按钮、Siri 或主页按钮的功能。
或者有吗?
命令
hg outgoing
Run Code Online (Sandbox Code Playgroud)
将本地仓库与默认推送位置进行比较; 它访问推送位置来完成它.
我想问一个问题"我上次检查了我当地回购中的变化hg push吗?" 无需访问远程仓库.
好像在当地的回购中可能有足够的信息来解决这个问题; 如果有,是否有命令来确定?
我正在尝试实现Karplus-Strong弹拨字符串算法的这种扩展,但我不理解那里使用的符号.也许它需要多年的学习,但也许它不会 - 也许你可以告诉我.
我认为下面的等式在频域或其他东西.刚开始使用第一个等式H p(z),即拾取方向低通滤波器.对于一个方向,你使用p = 0,对另一个方向,可能是0.9.在第一种情况下归结为1,或在第二种情况下归结为0.1 /(1 - 0.9 z -1).
alt text http://www.dsprelated.com/josimages/pasp/img902.png
现在,我觉得这在编码方面可能意味着:
H_p(float* input, int time) {
if (downpick) {
return input[time];
} else {
return some_function_of(input[t], input[t-1]);
}
}
Run Code Online (Sandbox Code Playgroud)
有人能给我一个暗示吗?或者这是徒劳的,我真的需要所有的DSP背景来实现这一点?我曾经是一名数学家......但这不是我的领域.
GLSL代码和传递数据的本机代码之间的类型必须匹配到什么程度?
例如,假设我有着色器代码:
uniform float uFloat;
uniform int uInt;
in float aFloat;
in int aInt;
Run Code Online (Sandbox Code Playgroud)
和本机伪代码(我遗漏了很多无聊的东西):
glUniform1i(glUniformLocation("uFloat"), 10)
glUniform1f(glUniformLocation("uInt"), 1.414)
glBufferData(int[1, 2, 3, ...])
glVertexAttribPointer(glAttribLocation("aFloat"), 0, GL_INT)
glBufferData(float[1.1, 2.2, 3.3, ...])
glVertexAttribPointer(glAttribLocation("aInt"), 0, GL_FLOAT)
Run Code Online (Sandbox Code Playgroud)
因此,请注意客户端代码中的类型匹配,但它们与着色器代码中的声明类型不匹配.
我要问的是,您是在逻辑层面还是在位表示方面告诉着色器值?
(我知道我似乎应该能够测试这个,但很难调试着色器,我觉得我的行为不一致,所以我只是在寻找确定的信息.)
是否有一个双操作数等效于map内置到Haskell中,其类型签名为:
map2 :: (a -> b -> c) -> [a] -> [b] -> [c]
Run Code Online (Sandbox Code Playgroud)
以下等同性应该成立:
map2 operator as bs === [operator a b | (a, b) <- zip as bs]
Run Code Online (Sandbox Code Playgroud)
例:
ghci> map2 (*) [2,3] [4,5]
[8,15]
Run Code Online (Sandbox Code Playgroud) javascript ×2
audio ×1
filter ×1
gamepad ×1
glsl ×1
haskell ×1
mercurial ×1
node.js ×1
opengl ×1
perforce ×1
pseudocode ×1
siri-remote ×1
tvos ×1
webgl ×1