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() 函数

  • 相关阅读:
    带你看懂MySQL执行计划
    MySQL rename table方法大全
    MySQL慢日志全解析
    mybatis-通用mapper
    springboot-数据访问
    docker-1常用命令
    springboot-错误处理
    springboot-配置1
    react--temp
    了解react记录2-生命周期
  • 原文地址:https://www.cnblogs.com/xiaodongxier/p/ru-he-rangjs-bian-liang-he-zi-fu-chuan-pin-jie-hou.html
Copyright © 2011-2022 走看看