ベストプラクティスというよりもバッドノウハウみたいの(==よりも===使えとか)含まれているけど…いくつか抜粋
default and guard operator:var foo = o || {};//init with empty obj if o is falsyvar bar = o && o.bar;//if o is truthy, return o.bar#jsEdu
2010-10-13 00:56:51 via web
var a = obj && obj.prop
objが未初期化でない場合にプロパティにアクセスする。objがnullの場合やobjがpropを持っていない場合にaはundefinedになる。if (obj) { } と書くよりはスマートか。
use Math.max.apply(Math, arr) to get the maximum value from the array in the fastest way #jsEdu
var arr = [1,2,3,5,1,2,4] Math.max.apply(null, arr) => 5
これはapply第二引数の配列の要素が引数として元の関数に渡されるのを利用したもの。Math.maxのapplyを呼ぶ場合は、第一引数は使われないのでnullで良い。
せっかくなので自分も引き出しから1つネタを
var a = !!obj.prop;
objにpropというプロパティがあればtrue、なければfalseとなる。プロパティがあるかどうか調べた結果を変数に入れたいときに。