dogwood008の開発メモ!

最近のマイブームは機械学習, Ruby on Rails。中でも機械学習を使った金融商品の自動取引に興味があります。

【mac】書式を無視して貼り付けるには、Cmd + Shift + option + V

要旨

それぞれの貼り付けショートカットキーにおける、動作の違い
それぞれの貼り付けショートカットキーにおける、動作の違い

詳細

コピペした際、 Cmd + V だと添付図上方のようにその文字の大きさや色等の装飾が引き継がれる。これが便利なこともあるが、一方で邪魔になるときもある。

そんなときは、 Cmd + Shift + option + V で、装飾情報を捨てて文字だけを貼り付けることができる。

参考

support.apple.com

【Node.js】実行時引数は2番目から取る(0番目はnode, 1番目はファイル名が入っている)

要旨

const args = process.argv.slice(2, process.argv.length)
console.log(args)

出力

$ node index.js abcde
[ 'abcde' ]

詳細

process.argv[0] には node ヘのpathが、 process.argv[1] には ファイルへのpathが入っている。これを確かめたのが以下のスクリプト。

const args = process.argv.slice(2, process.argv.length)
console.log(`process.argv: ${process.argv}`)
console.log(`args: ${args}`)
$ node index.js abcde
process.argv: /Users/<user>/.nodenv/versions/<node_version>/bin/node,/private/tmp/index.js,abcde
args: abcde

参考

nodejs.org

【JavaScript】プライベートメソッドやプライベートフィールドは、接頭辞に「#」をつける

要旨

class MyClass {
  publicMethod() {
    return 'publicMethod'
  }
  #privateMethod() {
    return 'privateMethod'
  }
}

mc = new MyClass()
console.log(mc.publicMethod())
console.log(mc.privateMethod())

実行結果

> class MyClass {
...   publicMethod() {
.....     return 'publicMethod'
.....   }
...   #privateMethod() {
.....     return 'privateMethod'
.....   }
... }
undefined
>
> mc = new MyClass()
MyClass {}
> console.log(mc.publicMethod())
publicMethod
undefined
> console.log(mc.privateMethod())
Uncaught TypeError: mc.privateMethod is not a function
>

Public, Privateそれぞれのメソッド読んだときの動作
Public , Privateそれぞれのメソッド読んだときの動作

詳細

static にも同様に適用できる。IEのみ対応していないが、もうEoLだから考えなくて良いね。

参考

developer.mozilla.org

【JavaScript】console.group() を使ったログのグルーピング

要旨

console.log('lv. 0')
console.group()
console.log('lv. 1')
console.groupEnd()
console.group()
console.group()
console.log('lv. 2')
console.groupEnd()
console.log('lv. 1')
console.groupEnd()
console.log('lv. 0')

console.group() を使ったログのグルーピング
console.group() を使ったログのグルーピング

詳細

複数回 console.group() を呼べば入れ子も可能。

参考

developer.mozilla.org