zoukankan      html  css  js  c++  java
  • 如何让JS变量和字符串拼接后,是变量而不是字符串?

    发现一个很有意思的问题,就是把变量与字符串或者数字拼接后类型变成了字符串,而并执行其中的的 JavaScript 代码。

    问题

    <ul class="testList">
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>
    <script>
        var testList = $(".testList li")
        var test0 = "变量0";
        var test1 = "变量1";
        var test2 = "变量2";
        var test3 = "变量3";
        for(var i=0;i<testList.length;i++){
          testList.eq(i).html("test" + i)
        }
    </script>
    

    输出结果:

    显然这并不是想要的结果

    解决 eval()函数

    eval() [1] 函数可计算某个字符串,并执行其中的的 JavaScript 代码。

    <ul class="testList">
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>
    <script>
        var testList = $(".testList li")
        var test0 = "变量0";
        var test1 = "变量1";
        var test2 = "变量2";
        var test3 = "变量3";
        for(var i=0;i<testList.length;i++){
          testList.eq(i).html(eval("test" + i))
        }
    </script>
    

    输出结果:

    参考

    [1]:JavaScript eval() 函数

  • 相关阅读:
    【CF 359B】Permutation
    如何更新 DevC++ 的编译器
    【LG 2801】教主的魔法
    矩阵浅谈
    NOI 系列赛常见技术问题整理
    Treap 浅谈
    DP 优化浅谈
    友链
    【CF 708C】Centroids
    我跳过的坑
  • 原文地址:https://www.cnblogs.com/xiaodongxier/p/ru-he-rangjs-bian-liang-he-zi-fu-chuan-pin-jie-hou.html
Copyright © 2011-2022 走看看