piapia123
zh

反应速度测试

生成器

所有处理都在浏览器本地完成,数据不上传服务器

反应速度测试

变绿的那一刻开始计时,所以等待时长每次都随机(1.2–3.5 秒)—— 固定 2 秒的话,测到的是「数到二」的能力。提前点会被记为抢跑,不进平均值。

成绩
有效次数—
最快—
中位数—
平均—
极差(最慢 − 最快)—
抢跑次数—

    点一下面板开始,等它变绿,绿的那一刻立刻再点一下 —— 两次之间的毫秒数就是你的成绩。整个过程全在本机,不需要注册,也没有排行榜。 等待时长每次随机(1.2–3.5 秒)。 这一点是刻意的:如果固定等 2 秒,那你测到的其实是「数到二」的能力 —— 人的大脑会在可预测的等待里提前准备好,读数会好得不像话。随机等待掐掉的正是这种预备,剩下的才是真正的反应。 ⚠️ 这个数字里包含你设备的延迟,所以只适合与自己比。 从屏幕点亮到浏览器把点击事件交给我们,中间有:屏幕的刷新周期、渲染管线、输入事件的派发、鼠标或触控板的固件延迟。这几项加起来通常在几十毫秒,换一台机器、换一个浏览器就会变。所以这里不给「你击败了百分之多少的人」这种说法 —— 那需要一个有代表性的常模数据集,我们没有;把一个混着设备延迟的数字说成能力排名,是不诚实的。 ⚠️ 抢跑单独计数,且不进平均值。 提前点的时候读数总是很小,混进平均值会让成绩「变好看」,而那次根本没测到反应。

    功能

    • 计时从变绿的那一刻开始,与画面同一帧对齐,不多算一个刷新周期
    • 测的是按下的瞬间(`pointerdown`),不是松开 —— 按住不放不会把按键时长算进成绩
    • 等待时长每次随机 1.2–3.5 秒,不给大脑预备的机会
    • 抢跑单独计数,不进平均值(那一次没测到反应)
    • 成绩给出最快、中位数、平均与极差 —— 中位数对「走神那一次」不敏感
    • 三档评价徽章(快 / 一般 / 偏慢),测完一眼知道落在哪一档
    • 每一次有效成绩按发生顺序排出来,最快的一次单独标出 —— 统计量看不出你是稳还是忽快忽慢
    • 鼠标与键盘(空格 / 回车)都能用;两条来源的读数不要混在一组里比
    • 面板背景大、对比强,手机上也点得准
    • 全程在本机运行,成绩不上传,也没有排行榜

    使用方法

    1. 点一下面板开始
    2. 面板变红时别动 —— 这时候点就是抢跑
    3. 变绿的那一刻立刻点下去
    4. 点几次之后看中位数与极差,那比单次最快更有意义

    常见问题

    为什么等待时长是随机的,不能固定 2 秒吗?
    固定 2 秒测到的不是反应速度。人的大脑很擅长利用可预测的间隔:数到二就位、手指提前绷紧,于是读数会明显好于真实反应 —— 那测的是「预备」的能力。把等待随机化之后,你无法预知哪一刻会变绿,成绩才是真正的「看到 → 反应」。这也是为什么这里不显示倒计时,也不给任何进度提示。
    我的成绩比朋友慢很多,是不是反应变差了?
    先别急着下结论 —— 这个数字里混着设备延迟,跨设备比较没有意义。 从屏幕点亮到点击事件被浏览器交给这个页面,中间有屏幕刷新周期、渲染管线、事件派发、鼠标或触控板固件这几段,合起来通常几十毫秒;无线鼠标、电视这类大屏、远距离投屏都会明显更慢。同一个人的两次成绩也要在同一台设备、同一种输入方式下比才有意义。这也是这里不做「击败了百分之多少的人」的原因:我们没有一个有代表性的常模数据集,拿一个混着设备延迟的数字当能力排名会误导人。
    为什么提前点不算成绩?
    因为那一次什么都没测到。抢跑的时刻与「变绿」之间没有因果关系 —— 读数只反映了你猜得早不早。更麻烦的是它的数值总是很小,混进平均值会让成绩看起来越来越好,而你优化的其实是一个假的数字。所以抢跑在这里单独记一笔并明确提示,成绩表只统计有效的那几次。
    为什么是按下去的那一刻,而不是松开?
    因为「松开」测的是按键时长。用 `click` 事件的话,按住鼠标 150 毫秒再松开,读数就会白白多出 150 毫秒 —— 那是你手指按住的时间,跟反应无关。所以这里监听的是 `pointerdown`(按下的那一刻就触发)。触控也一样:`pointerdown` 在手指接触屏幕时立刻到达,而 `click` 要等你抬手。

    相关工具