javascript - 如何使用 JavaScript 选择字符串的最后 4 个字符?

标签 javascript jquery greasemonkey tampermonkey

此代码选择数据 ID 之间的最高数值并为其添加石灰背景。顺便说一句,这些数字是十六进制值。 我的问题是,在十六进制值中,它是最后 4 个值的问题,但我的代码采用整个字符。我怎样才能让我的代码只适用于最后 4 个字符?

很抱歉,这对您来说可能很容易解决,但我一遍又一遍地尝试,但无法使其发挥作用。

十六进制转十进制:

dc61 = 56417

dc62 = 56418

dc63 = 56419

dc64 = 56420

 maxData = $(".answers li[data-id]").get ().reduce  ( (maxObj, crrntNode) => {
 
    var idVal   = parseInt ( $(crrntNode).data("id"), 16) ; 

    if (idVal > maxObj.value) {
        maxObj.value  = idVal;
        maxObj.node   = crrntNode;
    }
    return maxObj;
  },
  {value: 0, node: null}
);
$("body").append (`<p>The highest data-id value was ${maxData.value}.</p>`)
$(maxData.node).css ("background", "lime");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="question-text" class="question sp-element border-radius active">What is favorite colour?</div>
          <ul class="answers" id="answers">
            <li data-id="58b9890062279282090ddc61" class="answer sp-element border-radius active">Purple</li>
            <li data-id="58b9890062279282090ddc63" class="answer sp-element border-radius active">Blue</li>
            <li data-id="58b9890062279282090ddc64" class="answer sp-element border-radius active">Yellow</li>
            <li data-id="58b9890062279282090ddc62" class="answer sp-element border-radius active">Red</li>
          </ul>

最佳答案

如果我正确理解你的问题(我不确定我是否理解),你只想获取已知字符串的最后 4 个字符(转换为十进制,但这不是你的问题)。

在 JavaScript 中,您可能需要使用 substring API。例如,要获取任意字符串的最后 4 位数字,您可以这样做:

var str = "abcdefghijklmnop";
var substr = str.substring(str.length-4, str.length);

更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/substring

关于javascript - 如何使用 JavaScript 选择字符串的最后 4 个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47914644/

相关文章:

image - Greasemonkey 脚本,用于查找具有特定条件的行

javascript [array].splice 不工作 ("Uncaught TypeError: collisions.splice is not a function")

javascript - 阻止元素上的点击事件 2 秒

javascript - 当 Vue.js 发生更改时,如何定位列表中的所有项目?

javascript - 如何确定文本光标在网站上的绝对位置?

javascript - 强制部分代码等待其他代码?

javascript - event.preventDefault();提交表单时不起作用

jquery - 在单击的元素下显示右对齐的 div

javascript - 如何从最近的列表项中提取 "href"属性值

javascript - 有没有办法退出 Greasemonkey 脚本?