Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re^5: uninitialized value in join or string

by Roy Johnson (Monsignor)
on Oct 31, 2005 at 16:02 UTC ( [id://504307]=note: print w/replies, xml ) Need Help??


in reply to Re^4: uninitialized value in join or string
in thread uninitialized value in join or string

@values = map { defined $_ ? $_ : '' } @values;
Update: don't use map for transforming something into itself. If you're getting from a different source, though, this would be an appropriate technique.

Caution: Contents may have been coded under pressure.

Replies are listed 'Best First'.
Re^6: uninitialized value in join or string
by Win (Novice) on Oct 31, 2005 at 17:05 UTC
    This looks great. However, I would be very pleased if somebody could describe it in English. ;>
      map acts like a foreach loop, walking through an array (or list) and aliasing $_ to each element in turn. In addition to walking the list, though, map also constructs an array. The upshot is that you can transform an array with it.

      But explaining that just made me realize that you can get the same result with a foreach loop in this case:

      foreach (@values) { $_ = '' unless defined; }
      That should be more clear. It updates each undefined element of @values to be the empty string.

      Caution: Contents may have been coded under pressure.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://504307]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others contemplating the Monastery: (8)
As of 2024-09-11 06:52 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    The PerlMonks site front end has:





    Results (12 votes). Check out past polls.

    Notices?
    erzuuli‥ 🛈The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.