javascript - 通过对象的属性之一查找对象的名称

标签 javascript object

我有一个容纳所有白棋子的物体和一个容纳所有黑棋子的物体。现在我正在编写一个 if 语句来检查我使用的部分是否具有相同的颜色。

对象的代码是:

var whiteFgrs = {King:"&#9812", Queen:"&#9813", Fortress:"&#9814", Bishop:"&#9815", Knight:"&#9816", Peasant:"&#9817"};
var blackFgrs = {King:"&#9818", Queen:"&#9819", Fortress:"&#9820", Bishop:"&#9821", Knight:"&#9822", Peasant:"&#9823"};

以及存储所选位置值的代码:

var value1=document.getElementById(elemId1).lastChild.nodeValue;
var value2=document.getElementById(element.id).lastChild.nodeValue;

这将返回该片段(例如“♙”)。如何检查此代码是否是whiteFgrs或blackFgrs的一部分?

最佳答案

嗯,您可以像其他人建议的那样在对象中查找它,但是有一种更简单的方法来确定一 block 是黑色还是白色:

value < "&#9818" ? "white" : "black";
// or rather, as `nodeValue` gives you the plain text without html entities:
value < "\u265a" ? "white" : "black";

关于javascript - 通过对象的属性之一查找对象的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27411081/

相关文章:

javascript - 将来自 AJAX 请求的数据序列化为 PHP

asp.net - 如何将对象序列化为查询字符串格式?

javascript - 在 JavaScript 中动态地将数据写入嵌套对象

javascript - 当有多个 slider 实例时调用 next previous iDangero.us

javascript - Chrome 49 中 Canvas 性能非常慢

php - foreach - 遍历对象并更改值 - php5

c++ - 运算符方法是否占用 C++ 对象中的内存?

c# - 如何将 foreach 与二维对象数组一起使用?

Javascript:加载下一页后执行操作?

javascript - 尝试使用级联下拉列表,并希望为下拉列表中的每个唯一值显示不同的模式形式