DEV Community

endan
endan

Posted on

What is your favourite function()?

I think mine would be json_encode(). I think it's so cool that a single function can make your data understood by other machines. (I know other machines can interpret different kinds of data, but c'mon...)

How about you? What's your favourite function?

Discussion (36)

Collapse
teej profile image
TJ Fogarty

Based on usage it's probably console.log() or var_dump().

At the moment I'm enjoying some JavaScript array methods - filter, map, reduce.

Collapse
jjjjcccjjf profile image
endan Author

var_dump (); die ()!!!

Collapse
inozex profile image
Tiago Marques

I usually do like:
die(var_dump());

Thread Thread
jjjjcccjjf profile image
endan Author

I stopped doing this simply because I can't do it if I dump multiple variables at once.

var_dump($res);
var_dump($res2);
die();
Thread Thread
lexlohr profile image
Alex Lohr

But you could do die(var_dump($res, $res2));, couldn't you?

Thread Thread
inozex profile image
Tiago Marques

You can

Thread Thread
jjjjcccjjf profile image
endan Author

Really? Wow, #TIL!

Thread Thread
inozex profile image
Tiago Marques

Yeah, just like console.log(var1, var2) in JS

Collapse
bgadrian profile image
Adrian B.G.

random() functions, there is so much more behind them then we usually think. I can talk hours about entropy and sources, techniques, pseudo algorithms and how can it improve almost any software product.

Collapse
jjjjcccjjf profile image
endan Author

Improve in what way?

Collapse
bgadrian profile image
Adrian B.G. • Edited

As in, some product features can be improved using random (shuffle or generate things), most basic example is chose new 5 news headlines to see from the top 100 articles to an user, each x seconds/page views.

Thread Thread
jjjjcccjjf profile image
endan Author

inb4
p e r s o n a l i z a t i o n
🤣

Collapse
isaacleimgruber profile image
IsaacLeimgruber

In the way of randomized algorithms

Collapse
nektro profile image
Meghan (she/her) • Edited
new Date()
Collapse
itsasine profile image
ItsASine (Kayla)
var moment = require('moment');

😉

Collapse
pilskalns profile image
Andžs

In PHP I always include file with my custom helper functions. These two wrap output with <pre/> tags, which allows nice&quick debugging via browser from any class or template code.


function pre($obj = null, $escape = false){
    echo "<pre>";
    if($escape){
        $obj = htmlspecialchars ( print_r($obj, true) );
    }
    print_r($obj);
    echo "</pre>";
}

function dump($obj = null){
    echo "<pre>";
    var_dump($obj);
    echo "</pre>";
}
Collapse
dfellini profile image
Dan Fellini

HA! I have a pre() function too! I use it many, many times a day. Mine has the $obj, but then a title, so if I have multiple pre()s going, I know which is which. Like, pre( $obj, 'This is the user obj');
Love it.

Collapse
jjjjcccjjf profile image
endan Author

var_masterpiece is also an excellent browser extension too for debugging!

Collapse
alchermd profile image
John Alcher
$("");

Because it took me almost half a year to realize that it's a function, not a language construct.

Collapse
itsasine profile image
ItsASine (Kayla) • Edited
expect(true).toBe(true);
  1. It's a super useful dumb placeholder when just building out describes, its, beforeAlls, etc in Jasmine tests without actually caring about the legit expectations yet.
  2. It actually failed for me once, which was... enlightening
Collapse
31547 profile image
31547

typeof(arg);

surprisingly useful

Collapse
jishvi profile image
Jishnu Vasanth

Arrow function 🤓. this has never been easier.

Collapse
juankortiz profile image
juankOrtiz

Don't know if it's only a function, but ajax in Javascript is something else: the whole idea of a function connecting asynchronously to a server and retrieving data without the need of recharge the entire page is amazing.

Collapse
_bigblind profile image
Frederik 👨‍💻➡️🌐 Creemers • Edited

I don't really have a favorite function, because it's all about using the right one to solve a problem. ut I like functions that make things simpler, so I think I'd pick fetch(). Because before, making HTTP requests from JavaScript looked like this

var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
     document.getElementById("demo").innerHTML = this.responseText;
    }
  };
  xhttp.open("GET", "ajax_info.txt", true);
  xhttp.send();
Collapse
joshcheek profile image
Josh Cheek

In Ruby, backticks are a function call. And what's especially cool is that heredocuments with backticks call the same function, but with multi line arguments. So you can define them to do other, more interesting things, like call out to other languages! In practice, I mostly use it when experimenting with some slightly tedious external resource, I basically learned PostgreSQL by running them through these kinds of functions.

require 'open3'

def `(str)
  Open3.capture3('php', stdin_data: str).first
end

<<~`PHP` # => "hello cruel world\n"
hello \
<?php echo "cruel" ?> \
world
PHP
Collapse
kozlown profile image
Nigel

curry function is probably my prefered one.
For those who don't know its utility, here's a basic example:

const divide = curry((a, b) => a / b)
const divide4By = divide(4)

console.log(divide4by(2))
// 2

I even made my own optimized version 😄
npmjs.com/package/super-curry.

Collapse
garthvador profile image
Quentin Caillaud

I don't know why but I just love sprintf() in php ... It's very useful and much more elegant than just endlessly concatenate strings !

And less elegant but really useful once again, die(var_dump()) has a special place in my heart ...

Collapse
jundialwan profile image
Jundi Alwan

map, filter, reduce, forEach, Array.prototype.some, Array.prototype.every

Working with array in Javascript never been easier.
Love it all!

Collapse
isaacleimgruber profile image
IsaacLeimgruber

Agreed, high order functions are best

Collapse
maxmaxymenko profile image
Max Maxymenko • Edited

Love throwing exceptions around ;)

throw new Exception("...");
throw Error("...");
raise Exception.Create('...');
Collapse
abhi_nair_ profile image
Abhishek Nair

reduce is my favorite.

Collapse
essiccf37 profile image
essic

mine is fmap ...
fmap :: (a -> b) -> F a -> F b
with F being a Functor :-)

I find this one, truly comforting for some reason.

Collapse
bertilmuth profile image
Bertil Muth

I like map.put and map.get. Maps/Dictionaries are incredibly useful data structures that we tend to take for granted nowadays.

Collapse
avalander profile image
Avalander
explain_fork_or_die();

Reference

Collapse
isaacleimgruber profile image
IsaacLeimgruber

list.zip (other).map ((a,b) =>...)

Collapse
everydaygenius profile image
everydayGenius

When something went unexpectedly wrong..

panic(error)