Generic1: Vereinfachen

Hallo,

kann ich den unteren Programmcode irgendwie in JS vereinfachen?
Besten Dank,
Generic1

  
var axis = [];  
        if(ranges.yaxis != null) {  
            var yaxis1 = [];  
            yaxis1.push(ranges.yaxis.from);  
            yaxis1.push(ranges.yaxis.to);  
            axis.push(yaxis1);  
            }  
        if(ranges.y2axis != null) {  
            var yaxis2 = [];  
            yaxis2.push(ranges.y2axis.from);  
            yaxis2.push(ranges.y2axis.to);  
            axis.push(yaxis2);  
            }  
         if(ranges.y3axis != null) {  
            var yaxis3 = [];  
            yaxis3.push(ranges.y3axis.from);  
            yaxis3.push(ranges.y3axis.to);  
            axis.push(yaxis3);  
            }  
         if(ranges.y4axis != null) {  
            var yaxis4 = [];  
            yaxis4.push(ranges.y4axis.from);  
            yaxis4.push(ranges.y4axis.to);  
            axis.push(yaxis4);  
            }  
         if(ranges.y5axis != null) {  
            var yaxis5 = [];  
            yaxis5.push(ranges.y5axis.from);  
            yaxis5.push(ranges.y5axis.to);  
            axis.push(yaxis5);  
            }  

  1. Hi Generic1!

    kann ich den unteren Programmcode irgendwie in JS vereinfachen?

    Ja, mit einer Schleife über ein Array mit den 5 Elementen "y[Z]axis".

    MfG H☼psel

    --
    "It's amazing I won. I was running against peace, prosperity, and incumbency."
    George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
    Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)
  2. var axis = [];
            if(ranges.yaxis != null) {

    Evtl. kann die erwähnte Schleife hier zum Einsatz kommen.
    u.U. aber auch for in. Sind das alle Eigenschaften, die ranges hat?

    var yaxis1 = [];
                yaxis1.push(ranges.yaxis.from);
                yaxis1.push(ranges.yaxis.to);
                axis.push(yaxis1);

    Das geht auch einfacher:

    axis.push([ ranges.yaxis.from, ranges.yaxis.to]);

    Struppi.

  3. Hey,

      
    var axis = [];  
    ['yaxis', 'y2axis', 'y3axis', 'y4axis', 'y5axis'].each(function(ax)  
    {  
      if (ax in ranges) axis.push({from: ranges[ax].from, to: ranges[ax].to});  
      // if (ranges[ax]) axis.push([ranges[ax].from, ranges[ax].to]);  
    });  
    
    

    ich würde mir ein objekt merken, dann ist der zugriff später auch wieder einfacher:

      
    axis.each(function(range)  
    {  
      alert( range.from + ' ' + range.to);  
    });  
    
    

    hth