gpt4 book ai didi

javascript - 在上下文中使用 with 语句是个好主意吗?

转载 作者:行者123 更新时间:2023-11-27 23:31:35 24 4
gpt4 key购买 nike

<分区>

例如,如果我的游戏中有一个渲染函数,它会以相当高的速率调用(由 requestAnimationFrame 决定),例如:

function render() {
ctx.clearRect(0, 0, canvas.width, canvas.height);

ctx.beginPath();
ctx.arc(player.x, player.y, player.size / 2, 0, Math.PI * 2);
ctx.fillStyle = "#6f00ff";
ctx.fill();
}

为什么不简单地把它全部包装在一个 with 语句中呢?

function render() {
with (ctx) {
clearRect(0, 0, canvas.width, canvas.height);

beginPath();
arc(player.x, player.y, player.size / 2, 0, Math.PI * 2);
fillStyle = "#6f00ff";
fill();
}
}

这是一个好主意/做法吗?如果不是,为什么不呢?

编辑///////

对于那些不知道 HTML5 Canvas 是什么的人:

Canvas 是对 <canvas> 的引用DOM(文档对象模型)元素,可能看起来像这样:

var canvas = document.getElementsByTagName("canvas")[0];

而 ctx 是对以下内容的引用:

var ctx = canvas.getContext("2d");

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com