我正在熟悉Jasmine(http://pivotal.github.com/jasmine/)并发现一些令人困惑的事情:
it("should be able to send a Ghost Request", function() {
var api = fm.api_wrapper;
api.sendGhostRequest(function(response) {
console.dir('server says: ', response);
});
expect(true).toEqual(false);
});
Run Code Online (Sandbox Code Playgroud)
按预期失败.
但是,在回调中移动expect调用:
it("should be able to send a Ghost Request", function() {
var api = fm.api_wrapper;
api.sendGhostRequest(function(response) {
console.dir('server says: ', response);
expect(true).toEqual(false);
});
});
Run Code Online (Sandbox Code Playgroud)
以某种方式通过:O
经过一些调试:api.sendGhostRequest()执行异步ajax请求,并且jasmine在请求完成之前冲过去.
因此问题是:
在确定测试结果之前,如何让jasmine等待ajax执行?
我有一个在html画布上绘制的二次曲线context.quadraticCurveTo(controlX, controlY, endX, endY);.
我有控制点以及起点和终点,它们不一定是水平相互平齐的.
如何使用这些参数找到曲线上的中心点?
其实我想在这个中心点放一个div标签.这个过程中是否有任何方程式求解?
我有一个变量,当打印到控制台时,它看起来像这样:
Object { PK-34={...}, PK-35={...}}
Run Code Online (Sandbox Code Playgroud)
我正在为这个变量添加一个size方法:
Model_value.size = function(obj) {
var size = 0, key;
for (key in obj) {
if (obj.hasOwnProperty(key)) size++;
}
return size;
};
Run Code Online (Sandbox Code Playgroud)
此方法返回0,并使用以下方法迭代这些属性:
for (foo in Model_value)
{
//...
}
Run Code Online (Sandbox Code Playgroud)
不起作用.
我如何迭代那些PK-34,PK-35属性?
javascript ×3
ajax ×1
bdd ×1
bezier ×1
curve ×1
html5-canvas ×1
iteration ×1
jasmine ×1
object ×1
properties ×1
quadratic ×1