LoginSignup
1
1

More than 3 years have passed since last update.

JavaScriptのメモ

Last updated at Posted at 2020-02-26

これは何?

個人的なメモです。

書き換え?

boolean

!0 === true // true 
!1 === false // true

if

let a = 100
let b = false
if( b === false ) {
  a += 100
}
console.log(a) // a = 200

↑↑↑同義↓↓↓

let a = 100
let b = false
b === false && ( a += 100 )
console.log(a) // a = 200

置換

repelace (非破壊)

let some_word = '123456789'
some_word.replace(/4567/, '')
> "12389"

console.log('some_word=[%s]', some_word)
> some_word=[123456789]

Array

破壊を非破壊処理にする

let some_array = [1, 2, 3, 4, 5, 6, 7, 8]

some_array.pop() // 破壊
some_array.slice().pop() // 非破壊

サイズ指定&同じ数値で初期化

let N = 10
let init_num = 0
let some_array = new Array(N).fill(0)

Math.sum()

let some_array = [1, 2, 3, 4, 5, 6, 7, 8]
some_array.reduce((a, b) => a + b, 0)

Math.max()

let some_array = [1, 2, 3, 4, 5, 6, 7, 8]
let max_num = Math.max(...some_array)

数値としてsort() [破壊]

let some_array = [9, 1, 12, 13, 4, 15, 6, 7, 8]
// 破壊
some_array.sort( (a, b) => { return a - b }) // 昇順
some_array.sort( (a, b) => { return b - a }) // 降順

forEachでkey,value

let some_array = [9, 1, 12, 13, 4, 15, 6, 7, 8]
some_array.forEach( (val, key) => {
  console.log('key=[%s] val=[%i]', key, val)
})

要素分割

let some_array = [9, 1, 12, 13, 4, 15, 6, 7, 8]

some_array.slice().splice(3, 5) // index=3 から 5 要素 
> (3) [13, 7, 8]

some_array.slice().slice(5) // index=6 から最後までの要素
> (4) [15, 6, 7, 8]

重複要素の削除(distinct)

const unique = (value, index, self) => {
  return self.indexOf(value) === index
}

const ages = [26, 27, 26, 26, 28, 28, 29, 29, 30]
const uniqueAges = ages.filter(unique)

console.log(uniqueAges)
> (5) [26, 27, 28, 29, 30]

Object

ObjectのキーをArrayで取得

let some_obj = {
  a: 0,
  b: 1,
  c: 2
}
let keys = Object.keys(some_obj)

ObectをforEach

let some_obj = {
  a: 0,
  b: 1,
  c: 2
}
Object.keys(some_obj).forEach( key => {
  let val = some_obj[key]
  console.log('key=[%s] val=[%i]', key, val)
})

ObjectのValue最大

arr_idxarr のindex。

arr_idx = []
let arr = Object.keys( obj ).map( ( key ) => {
  arr_idx.push(key)
  return obj[key]
})
let min = Math.min.apply( null, arr );
let max = Math.max.apply( null, arr );

console

%s : String
%d or %i : Number
%f : Floating points
%o : an Object
%j : JSON

Reference

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1