一、借助对象(容器),批量创建:

 

//变量名称
var nameList=[ "BottomQuality", "HabitatComplexity", "VelocityOrDepthCombinationCharacteristics", "StabilityOfRiverOrLakeBank", "RiverHannelChange", "WaterQuantityConditions", "VegetationDiversityOrLakesideVegetation", "WaterQualityCondition", "IntensityOfHumanActivities", "LandUse"]
       // 动态批量创建变量
       var objData={}
        for(let k=0;k< nameList.length;k++){      
         objData[nameList[k]]=[];      
        }
     //批量给变量赋值,dataTemp来自数据库。
        for(let i=0;i<dataTemp.length;i++){
          for(let j=0;j< nameList.length;j++){      
            objData[nameList[j]].push(dataTemp[i][nameList[j]]);      
          }
        }

如果objData 在方法里面,那么就是批量创建局部变量(相对于该方法内的其它对象)。

如果objData 在方法外面,那么就是批量创建全局变量(相对于该方法的作用域)。

如果  删除 var objData={},直接将objData替换为全局变量window,那么就是创建全局变量(相对于window对象的作用域,一般指这个页面)。

在vue项目,删除 var objData={},直接将objData替换为全局变量this,那么就是创建全局变量(相对于该this的作用域,一般指页面或组件)。

 

 

转载来源

一、

https://blog.csdn.net/stevenzhong900610/article/details/40857087

借助全局对象window或eval方法

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
    <script>
 
 
        var obj = {}
 
        var num = 1;
 
        function na() {
 
            var names = 'name' + (num++);
            window[names] = '我爱你' + num;
 
        }
 
        function xxx() {
           
            alert( eval("name1"));
        }
 
    </script>
</head>
<body id="body" οnlοad="na()" >
     <input type="button" value="button" οnclick="xxx();" />
</body>
</html>
View Code

相关文章:

  • 2021-11-17
  • 2021-11-26
  • 2021-11-18
  • 2021-05-30
  • 2021-11-17
  • 2021-12-26
  • 2022-01-31
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-09-10
  • 2022-12-23
  • 2021-09-28
  • 2022-12-23
  • 2021-11-17
相关资源
相似解决方案