javascript - 为什么我不能将变量名传递给 JS 函数?
问题描述
我正在开发井字游戏。尝试传入要选择的封闭变量的名称和要分配给它的值。但是,这不起作用...如果我在不带引号的情况下传入 s1 会产生错误,因为 s1 不是全局变量,如果我用引号将其传入,它会运行,但似乎创建了一个名为"square" 并且根本不使用 square 参数的值。
所以,我可以想象通过遍历所有变量并将每个变量与我的参数字符串进行比较来做到这一点,但是有更好的方法吗?
const gameBoard = ((squareStatus) => {
const squares = document.querySelectorAll('.square');
for (let i = 0; i < 9; i++) {
console.log(squareStatus[i])
//squares[i].innerHTML = squareStatus[i];
}
});
const gameBrain = function(square, mark) {
const s1 = "x";
const s2 = "x";
const s3 = "o";
const s4 = "x";
const s5 = "o";
const s6 = "o";
const s7 = "o";
const s8 = "x";
const s9 = "x";
square = mark;
gameBoard([s1, s2, s3, s4, s5, s6, s7, s8, s9]);
}
gameBrain('s1', 'z');
解决方案
推荐阅读
- sql - 我想在 SQL 中使用递归返回新列?
- wso2is - 通过 wso2 身份服务器发送电子邮件失败
- java - Liquibase 是否在 Spring Boot 应用程序中注册所有 bean 之前运行?
- qt - 将 textEdit 中的字符串添加到 QStack
- angular - 如何获取变量名
- javascript - 画布已被跨域数据污染 - 虽然我有 cors
- openldap - 使用 posixGroup 和 groupOfNames 的 OpenLDAP 配置
- mysql - most frequently used queries mysql
- javascript - 我可以从 json 文件执行脚本吗
- python-3.x - 如何在pyopengl中设置多条线图的背景灰度?