擅于使用JS的eval方法

样例如下:

var appsDetails = {“app1”:"",
           “app2”:"",
           “app3”:"",
            “app4”:"",
            “app5”:"",
            “app6”:""
          }
/* 
$('#app1').change(function(){
	appsDetails["app1"] = $('#app1').val();
})

$('#app2').change(function(){
	appsDetails["app2"] = $('#app2').val();
})
$('#app3').change(function(){
	appsDetails["app3"] = $('#app3').val();
})

$('#app4').change(function(){
	appsDetails["app4"] = $('#app4').val();
})
$('#app5').change(function(){
	appsDetails["app5"] = $('#app5').val();
})

$('#app6').change(function(){
	appsDetails["app6"] = $('#app6').val();
})

 */

function getappsDetails(){	
	//use eval to execute all change function
	var arr  = Object.getOwnPropertyNames(appsDetails);
	for(var i = 0; i < arr.length; i++){		
		var evalStr = "appsDetails['"+arr[i]+"'] = $('#"+arr[i]+"').val();"
		eval(evalStr);
	}
	
	return JSON.stringify(appsDetails);
}

  

例如有许多重复的代码,只差一些变量的不同可以使用eval方法来执行,代码上会减少很多。  

原文地址:https://www.cnblogs.com/fanbi/p/7264345.html