markdown lodash.md
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown lodash.md相关的知识,希望对你有一定的参考价值。
https://lodash.com/
デモ:https://codepen.io/mo4_9/pen/vZLdbq
# 並び替え
## sortBy
ageで昇順
```javascript
users = _.sortBy(users, 'age');
```
## orderBy
'asc','desc'で昇順/降順が選べる
```javascript
users = _.orderBy(users, 'age', 'desc');
```
## reverse
ageで降順(メソッドチェーン)
```javascript
users = _(users)
.sortBy('age')
.reverse()
.value(); // 配列でなく1つのオブジェクトを返す場合は不要
```
## shuffle
シャッフル
```javascript
users = _.shuffle(users);
```
## sample
ランダムに1つだけ取得
```javascript
user = _.sample(users)
```
# 絞り込み
## take
前から5つだけ取得
```javascript
users = _.take(users, 5)
```
後ろから取得する場合は`takeRight`
## filter
age > 35 で絞り込む
```javascript
users = _.filter(users, (obj) => {
return obj.age > 35;
});
```
## find
プロパティ、条件で絞り込む
複数該当するものがあったら最初に該当したものだけを取得
```javascript
user = _.find(users, {user: 'fred', active: true})
```
## includes
名前に'b'が含まれるユーザーを絞り込む
```javascript
userContainB = _.filter(users, (obj) => {
return _.includes(obj.user, 'b');
});
```
# 判定
## inRange
'月'は1~12、'日'は1~31を取得したいとき
```javascript
_.inRange(month, 1, 12 + 1);
_.inRange(today, 1, 31 + 1);
```
# 整形
## padStart
ゼロ埋め
時間表示に使える
```javascript
const hour = _.padStart(9,2,0);
const minute = _.padStart(5,2,0);
const second = _.padStart(3,2,0);
console.log(`${hour}:${minute}:${second}`); // 09:05:03
```
## nth
たとえば `http://sample.com/room/1/chat/2` の地点から `roomId=1` を取得する
```javascript
const roomId = _(location.href.split('/')).compact().nth(-3);
```
`compact()`はfalsyな値を削除
# ループ
## each
ObjectもNodeListもまわせるので便利。
古いiOSでNodeListにforEachが使えないなどのバグもよしなに吸収してくれるので、each処理はデフォルトでlodashを使うべき。
```javascript
// NodeList
_.each(document.querySelectorAll('.item'), (elm,index) => {
console.log(elm,index);
})
// Object
_.each({one: 1, two: 2, three: 3}, (value,key) => {
console.log(key,value);
})
```
# 間引く
## throttle
一定間隔以内での関数の再実行を禁止する
```javascript
function throttle() {
$('.throttle').append('throttle ');
}
$('#inputThrottle').on('click', _.throttle(throttle,1000))
```
## debounce
処理が終了して、一定間隔経過したら関数の実行
再度処理が始まった場合はキャンセル
```javascript
function debounce() {
$('.debounce').append('debounce ');
}
$('#inputDebounce').on('click', _.debounce(debounce,1000))
```
cf. http://matsukaz.hatenablog.com/entry/2014/04/09/082410
以上是关于markdown lodash.md的主要内容,如果未能解决你的问题,请参考以下文章
markdown转换为图片
转换rst到markdown总结
markdown [Markdown HowTo]作为Markdown语法的秘籍
python markdown干啥用的
markdown前端渲染
如何用markdown生成目录