我需要优化我的棋盘代码(JS),以避免为同一个棋子(如典当)和其他棋子复制太多行代码。
我认为我需要创建更好的数据结构,但我不知道如何迭代我的数据结构以定位板上的所有部分。这是该项目的codepen 链接。
例如,这是我将骑士棋子放在棋盘上的功能。
function addKnight() {
//piece create function
var KnightFirst = oneKnight[8];
var KnightSecond = oneKnight[15];
var KnightThird = oneKnight[48];
var KnightFour = oneKnight[55];
pieceKnight1 = document.createElement("i");
pieceKnight1.classList.add("fas");
pieceKnight1.classList.add("fa-chess-knight");
pieceKnight2 = document.createElement("i");
pieceKnight2.classList.add("fas");
pieceKnight2.classList.add("fa-chess-knight");
pieceKnight3 = document.createElement("i");
pieceKnight3.classList.add("fas");
pieceKnight3.classList.add("fa-chess-knight");
pieceKnight4 = document.createElement("i");
pieceKnight4.classList.add("fas");
pieceKnight4.classList.add("fa-chess-knight");
KnightFirst.appendChild(pieceKnight1);
KnightSecond.appendChild(pieceKnight2);
pieceKnight2.classList.add("color");
KnightThird.appendChild(pieceKnight3);
KnightFour.appendChild(pieceKnight4);
pieceKnight4.classList.add("color");
}