I have 2 JavaScript functions that dynamically-named..
function a1(){
//some codes
}
function a2(){
//some codes
}
function a3(){
//some codes
}
these functions above generated by PHP for sure..
<?php
for($i = 1; $i <= $load_period->count; $i++){
?>
<script type="text/javascript">
function a<?php echo $i;?>(){
//javascript functions
}
</script>
<?php
}
?>
now I have to call both of these functions with for..
for(var i= 1; i <= 3; i++){
// here the solution code ..
// doesn't work >> a+i+();
}
- NB 1 : it's doesn't work with "a+i+();" .
- NB 2 : I don't want to use "EVAL" syntax
thanks for any solution..
If the functions are globally accessible you may write
Otherwise, you may be able to rewrite your code to add all the functions to one variable:
... and call
f['a'+i]()
.If you're rewriting, since all functions are named by an index, you might as well write:
... and call
myFunctions[i]()
. (Of course, as Felix Kling points out in comments,i
here would have to be adjusted to be 0-based).