Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
JS Lovers 愛はJavaScriptで掴め。
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
256times
April 17, 2019
Programming
3.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JS Lovers 愛はJavaScriptで掴め。
256times
April 17, 2019
More Decks by 256times
See All by 256times
256times 6週間の軌跡
256times
0
1.7k
256timesふりかえり
256times
0
1.6k
toraの256times
256times
0
1.5k
挫けてからはじまるアプリ開発
256times
0
3.3k
エラーで学ぶJavaScript
256times
1
3.3k
JavaScript初学者がスパルタ環境で頑張れた理由
256times
1
3k
今日も挑戦者ここで討たれり
256times
0
3k
JavaScriptのイベントを体感しよう
256times
0
3k
Other Decks in Programming
See All in Programming
iOSDC Japan 2026 - Swiftで作って学ぼう!データベース自作入門
kaseken
2
430
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
120
Security issues being discussed on Web Platforms
petamoriken
0
1.4k
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
330
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
140
速習iPhone Duo対応
yuukiw00w
2
930
AWSに止められる覚悟してますか?
morizo_1984
2
500
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
750
FreeBSDでZabbixを動かす
kenkino
0
350
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
140
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
510
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
470
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
How to build a perfect <img>
jonoalderson
1
6.1k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
520
Marketing to machines
jonoalderson
1
5.8k
The Curse of the Amulet
leimatthew05
3
15k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
The Language of Interfaces
destraynor
162
27k
Rails Girls Zürich Keynote
gr2m
96
14k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
530
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Transcript
JS Lovers 愛はJavaScriptで掴め。
自己紹介 • 毛利健人(愛称:ケリー) • 茨城生まれ、東京・立川育ちの27歳 • 「数学とか小難しいの嫌い」という理由で文学部に進んだバリバリ の文系人間 • 現在は動画配信サービス会社でデータアナリティクスを担当
エンジニアと話す機会が増えたこともあり、プログラミングに興味 を持った • 趣味は海外旅行 (写真は昨年クリスマスに中国・天津で散髪、想定以上の仕上がり に放心しているところ) • 今日は「愛をJavaScriptで掴む手段」をこっそり教えます
Step1. Tinder 「出会い系」にアブないニオイが漂っていたのも今は昔… アメリカでは、3組に1組がアプリで結婚する時代。 ただでさえ効率が良いマッチングアプリでの出会い、 JavaScriptでもっと効率化させる方法を考えました。 オジサン も、Tinder を使えば、若い女の子 と、た
くさん出会う コトがデキるのカナ
//必要な要素を変数に代入していく const photo = document.querySelector(‘img‘); //写真 const age = document.getElementById(’age’);
//年齢の欄 const ageText = age.textContent; //年齢のテキスト const prof = document.getElementById(‘profile’); //プロフィールの欄 const prooftext = prof.textContent; //プロフィールのテキスト const like = document.getElementById(‘Like’); //Likeボタン const unlike = document.getElementById(‘Unlike’);//Unlikeボタン // if文を用いて取捨選択…美人だけ? if ( photo === '美人' ) { //photoが美人だったら click(like); //Likeをclick } else { //さもなくば click(unlike); //Unlikeをclick }
// if文に条件追加、更にelse ifで分岐条件も追加…snowだけ? if ( photo === '美人' && photo
!== 'snowで撮影' ) { click(like); } else if ( photo === '浜口京子' ){ //そうじゃなくても、photoが京子だったら click(like); //Likeをclick } else { //さもなくば click(unlike); //Unlikeをclick }
//こだわりが尽きないので、論理演算子と条件演算子を用いて文を短く ( photo === '美人' && photo !== 'snowで撮影' &&
ageText < 36 && profText.includes(' 社交的') || photo === '浜口京子' ) ? click(like) : click(unlike);
None
ごめん、今日風邪っぽい .
if( photo === '健康そう' )
Step2. 合コン 「合コン」という名の戦場はいつだってゼロサムゲーム。 高度情報化社会の現代において、情報戦が重要度を増して いることは言うに及びません。 孫氏曰く、「彼れを知りて己を知れば、百戦してあやうか らず」。相手を知り、己を知るJavaScriptの謀略やいかに。
//事前にプロフィールをチェックし、盛り上がる会話を想定しておく const females = Facebook.getElementsByClassName('今日来る女の子たち’); //今日来る女の子たちのFaceBookプロフィールを females.forEach(item => { //それぞれ
let myBrain = document.getElementById('僕の脳みそ'); myBrain += item.textContent; //僕の脳みそに女の子の情報を叩き込む });
None
None
// 緊張がほどけるように酒を飲む let のどかちゃんからの好感度 = 0; const 胃袋 = [];
for( let 自信 = 0; 自信 < 緊張; 自信++ ) { //自信が緊張を上回るまで、以下の命令を実行し続ける 飲み干すジョッキ++; //ジョッキを追加 胃袋.push('酒'); //胃袋に酒を追加 のどかちゃんの好感度 = 胃袋.length; //胃袋の酒の量だけ好感度が上がる };
// 緊張がほどけるように酒を飲む let のどかちゃんからの好感度 = 0; const 胃袋 = [];
for( let 自信 = 0; 自信 < 緊張; 自信++ ) { //自信が緊張を上回るまで、以下の命令を実行し続ける 飲み干すジョッキ++; //ジョッキを追加 胃袋.push('酒'); //胃袋に酒を追加 if ( 飲み干すジョッキ > 9 ) {//ジョッキが10杯に達すると 胃袋 = null; のどかちゃんの好感度 = null; break; } のどかちゃんの好感度 = 胃袋.length; //胃袋の酒の量だけ好感度が上がる };
break;
Step3. 仲直り 恋人になるのは、幸せのゴールではなくスタート。時に、 二人の間でトラブルが生じることもあるでしょう。 とりわけ、機嫌を損ねた女性の扱いの難しさたるや、フィ ギュアの4回転半アクセル並。しつこすぎずほっときすぎ ない慎重さが求められます。 でも、あなたがJavaScriptを学んでいれば大丈夫。 JavaScriptで解決できない問題など無いのです。
// 定期的に謝りのメッセージが入るようにする const mailing = () => { const textarea
= document.getElementById('テキスト入力フォーム'); textarea.value = 'ごめんね…'; //テキスト入力フォームにvalueを代入 document.querySelector('送信ボタン').click(); //送信ボタンをクリック setTimeout(mailing, 10800000); //3時間後 }; mailing();//再帰処理により、上記命令を繰り返す
//ランダムにメッセージが送られるようにする const mailing = () => { const textarea =
document.getElementById('テキスト入力フォーム'); const number = Math.floor(Math.random() * 5); //ランダムに0~4の値を出す switch (number) { case 0: textarea.value = 'ごめんね…素直じゃなくて'; break; case 1: textarea.value = '今すぐ会いたいよ…'; break; case 2: textarea.value = '電話もできない、どうしよう…'; break; case 3: textarea.value = '月の光に導かれ、何度も巡り合う…'; break; case 4: textarea.value = 'ミラクル・ロマンス…'; break; } document.querySelector('送信ボタン').click(); setTimeout(mailing, 10800000); //3時間後 }; mailing();//再帰処理により、上記命令を繰り返す
None
None
None
for(僕がこの世を去るまで) { 君を愛し続ける; }
ご清聴ありがとうございました! https://js-lovers.firebaseapp.com/