+ JavaScript の質問用スレッド vol.144 +
レス数が1000を超えています。これ以上書き込みはできません。
JavaScript を自ら学ぶ人のための質問スレッドです。
次スレは>>950が(本スレで改善案があれば考慮して)立ててください
■規則/推奨ルール
質問者は !slip:vvvvv を名前欄に、その後は「レス番」+!slip:vvvvv
・質問内容は具体的に。言葉だけでなく、出来る限り再現性を確認したサンプルコードの掲示。
・質問テンプレートの利用推奨。
・質問への「答え」から解離した議論はよそでやること。
■禁止行為
・丸投げ質問
・迷惑スクリプトの質問
・オレオレ用語の使用(一般的な用語を使用する事)
・煽り、批判等の他人を不快にさせる行為
■質問テンプレート
【環境】ブラウザをバージョンと共に記入してください。
【条件】期待する回答の条件を書いてください。
【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。
【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。
【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
1レスに収まらないならコード投稿サイトを利用してください。
http://jsdo.it/ http://jsbin.com/ http://jsfiddle.net/ http://ideone.com/
■回答者へ
・回答には多様性があります。他人の回答を尊重してください
・動作ブラウザや環境が限られる場合は、それを明記してください
・他人の回答を批判する代わりに、自分ならこう書くという例を示してください
・質問者がJavaScriptでなければ実現できないと勘違いしてるなら、その否定としてHTMLとCSSで実装しても良い
・他人の回答を見たくないのであれば、文句をつける代わりにNGにして見えないようにしてください。文句をつける=荒らしです
■前スレ
+ JavaScript の質問用スレッド vol.143 +
https://mevius.5ch.net/test/read.cgi/hp/1577357404/ ■FAQ
◆開発者ツール(Developer Tools)の基本的な使い方
▼諸注意
- 本説明では Google Chrome の開発者ツールの名称に従います。他ブラウザで使う場合は適宜読み替えて下さい。
- Safari はデフォルトで開発者ツールが無効な為、有効に設定する必要があります。
https://developer.apple.com/library/safari/documentation/AppleApplications/Conceptual/Safari_Developer_Guide/GettingStarted/GettingStarted.html
▼要素を検証
1. ページ上で右クリックして [要素を検証]
2. [Elements] パネルが開き、対象のDOMノードが選択される(選択対象が目的の要素でなければ [Elements] パネル上で選択し直す)
3. 右側のサイドバーから知りたいステータス名のタブを選択する
- [Styles] タブ … CSSプロパティの指定値を表示 (※カスケードによって上書きされたプロパティは取り消し線で表示される)
- [Computed] タブ … CSSプロパティの算出値を表示("font-size: 1em" を指定していても算出後の "*px" で表示される)
- [Properties] タブ … 選択したDOMノードのプロパティを表示
▼コンソール
1. JavaScript コード上で console.log('Hello, World!'); と入力
2. [Ctrl] + [Shift] + [I] キー(IE は [F12])で開発者ツールを開き、[Console] パネルを開く
3. [Console] パネルに "Hello, World!" と表示される
(※window.alert() は String 型に変換されますが、console.log() は Object 型の中身をそのまま表示してくれます。) 以上、テンプレを一度ブラッシュアップしてみましたので
本当に必要な物があれば次スレから追加していってください
ただ、読まれることはほとんど無いと思いますし
せいぜい3レス程度にした方が良いと思います ありがとう、質問させてください。
またElectronの質問なんですが、メインプロセスとレンダープロセスが有るじゃないですか
メインプロセスでDOMを作ってレンダープロセスで表示させたいのだけど
何故か引き渡したDOMが認識されなくて現状レンダープロセスでしかDOMを弄ることが出来ません
DOM自体もHTMLの特定部分に差し込むとか出来なくて全部置き換える場合しか表示できていません
render_preload.js -------------------------------------------------------------
const { ipcRenderer } = require('electron');
window.addEventListener('load', async ()=> {
const data = await ipcRenderer.invoke('invoke', 'invoke ping');
document.write(data);
});
main.js ------------------------------------------------------------------------
const { ipcMain } = require('electron');
const { DOMParser } = require('xmldom');
ipcMain.handle('invoke', async (event, message) => {
// 実際はクラスに書かれています
let dom = new DOMParser().parseFromString('<!DOCTYPE html>', 'text/html');
// 適当な操作
return dom;
});
こんな感じです。DOM操作のヒントを頂ければ有り難いです
それとXMLのDOMって作る必要とかありますか? letとかコンストとか無かった時代って不便だった? 常識で考えたらスレッドが違うんだから、渡せるのはプリミティブ型と
素朴な要素でなる素朴なオブジェクトと、一部なトランスファラブルなオブジェクトだけじゃないの
DOMオブジェクトを引き渡そうとか考え方に無理があると思うよ >>7
DOMはレンダ―プロセスでやれ
document.write使うなし >>8
for-letとswitchの節にブロック書いてスコープ区切れるのは便利になった ■FAQ(続き)
◆JavaScriptの実行速度
JavaScriptの速度は「ブラウザ名」「ブラウザのバージョン」「PCスペック」に依存します(ブラウザのバージョン毎に最適化具合が異なります)。
速度の疑問解消の為に http://jsperf.com/ (githubのアカウントが必要です)にコードをUPしてブラウザ毎に速度計測する事を推奨します。
例外として、仕様における理論上の速度が明確になっている場合があります。
例えば、正規表現によるマッチング処理を考えた場合、「RegExp#test > RegExp#exec > String#match」は ES5 仕様で保証(要出典)されています。
ES5 仕様において RegExp#test が最も処理数が少なく、String#match が最も処理数が多いことが明確だからです。
ブラウザによっては RegExp#test の最適化が十分でなく、String#match の最適化が RegExp#test より十分であれば逆転する可能性はありますが、各メソッドの最適化が一律であればこの前提が崩れる事はありません。
■各種仕様
◆ Standard ECMA-262
http://bclary.com/2004/11/07/ (ECMAScript 3 HTML版)
http://www2u.biglobe.ne.jp/~oz-07ams/2002/ecma262r3/ (ECMAScript 3 和訳)
http://www.ecma-international.org/ecma-262/5.1/ (ECMAScript 5.1 HTML版)
http://tsofthome.appspot.com/ecmascript.html (ECMAScript 5.1 和訳)
http://www.ecma-international.org/ecma-262/6.0/ (ECMAScript 6 / ECMAScript 2015)
http://kangax.github.io/compat-table/es5/ (ECMAScript 5 compatibility table)
http://kangax.github.io/compat-table/es6/ (ECMAScript 6 compatibility table)
◆ HTML Standard (HTML5)
http://www.whatwg.org/specs/web-apps/current-work/multipage/
http://momdo.s35.xrea.com/web-html-test/spec/WD-html51-20130528/Overview.html (HTML5.1 部分訳)
http://www.hcn.zaq.ne.jp/___/WEB/WebStorage-ja.html (Web Storage 和訳) Q. jQueryはどのバージョンを使えばいいのですか?
A. IE9以上であれば、jQuery 3.0を使用してください。
IE8以下にも対応するならば、jQuery 1.12を使用してください。
補足
jQuery 1.9 までは一系統しかなく、古いブラウザも含めて全て対応していました。
その後、古いブラウザを切り捨てるためにバージョンを分岐させました。
古いブラウザにも対応した1系(1.10、1.11、12)と
古いブラウザを切り捨てた2系(2.0, 2.1, 2.2)です。
1系と2系は対応ブラウザの違いだけで機能は全く一緒です。
機能が同じなのにメジャーバージョンが違っているのが分かりにくい
ということでバージョン番号の付け方を変えることになり、
新たに古いブラウザを切り捨てたjQuery 3.0、そして古いブラウザにも対応した
jQuery Compat 3.0がリリースされる予定でした。
しかしマイクロソフトが古いIEのサポートポリシーを変更し
サポート中であるOSで動く、最新のIEしかサポートしなくなったために、
2016年1月でVista上のIE8のサポートが終了しました。
そのため予定されていたjQuery Compat 3.0がなくなり、
jQueryは3.0に一本化されました。 適当なリンク集を載せるのはやめようぜ
いくつものリンクが切れてたりするし、勧める本人も確認してないリンクなんていらんだろ
現UIイベントのいろんなバージョンを載せてるのも意味がわからないし
MDNにリダイレクトされるMSDNを載せるのも意味がわからない
それにJavaScript Gardenとかここに来るやつに勧めて大丈夫か?
今となってはJSを歴史的にもES3の段階から学びたいと思うような奴でないと
レガシーすぎてむしろ害になるだろう 続き
>>15
・出典もないし現実に即してない蛇足は要らん
・リンクが切れてる&古すぎる
>>16
ただ羅列して何の意味がある?
簡単な説明くらいつけろ
>>17
いい加減不要 以前Vueについて質問した者ですが、また初歩的な質問ですみません
たとえば「Welcome」というテキストをポンと表示させるのを
ネイティブだとcreateElement(‘p’)、document.appendChildといった流れで簡単にできるのですが
これをVueでやるのってもしかして難しいことですか? はい。
jQueryだと $('<p/>', {text: "Welcome"}).appendTo('#id') という
一行で出来ることもVue では難しいです。 いやいや、テキストをポンと表示させると言っても
現実的に考えればどっかのテキストを置き換えるだけではなくて
アニメーションだとか最低でもCSSとの絡みを考えないと行けないし
状態の変化と関連してる場合も多いだろうから実際には1行と言うわけにはいかないし
そういう全体の構造を大きな目で見て整えるのがフレームワークの役目でしょ つうかテンプレートはVueの基本中の基本なのに
以前質問してから今まで何を学んできたんだい? レス進んでますが私は>>21以降書き込んでないので勘違いはやめてほしいです
みなさんが当たり前と思ってることが自分の中では当たり前じゃないので
皆さんの何気ないレスポンスも非常に刺激になってます。ありがとう >>21です。皆さん私の時間を何だと思ってるの?w
皆さんほど私は暇じゃないんで…テンプレート?とか調べる時間ないでしょw
分かったらさっさとVuuでテキスト表示させるコード貼ってろ無能ども そういうのはVueよりもReactの方が得意としている
Vueは簡素化し過ぎてて基本的なことをやるのに手間がかかるよ Vueはよう知らんけどappendchild(text.$el)みたいな構文は少し検索すりゃ出てくるぞ >>32
もしそんな事が書かれてる記事があったら執筆者はエアプとしか言いようがない
どのサイトよ? >>34-35
マジで頭痛くなるようなポンコツ記事だな
運良く動いてるだけ 伸びてると思ったらVueか
だからReactにしとけと >>37
言うほどかね
jQueryと組み合わせるのは理に適ってると思うが jQueryだとこれだけ $('<p/>', {text: "Welcome"}).appendTo('#id')
それと同等のコードを出すだけで、このように荒れるわけですw >>21→>>22のレスポンスの速さからして最初からVueをバカにするための目的のマッチポンプでしかないわ。
こんなことでしかReactを持ち上げることができないのか >>43
>>21ですが、本当に自分は関係ないです。そうとしか言えません、すみません >>43
いやさ、Vueがバカにされてる!悔しい!って書き込みじゃなくて
なんでVueの良さを伝える書き込みをしないの? JQNが素のDOM APIと戦うのは分が悪いと判断して矛先を変えてきたか
こりゃ面白くなりそうだ >>45
ここは自ら学ぶためのスレ
コード制作依頼板でも無ければ
推しメン紹介板でも無い
勘違いするな >>44
謝らなくていいから君は基本くらい勉強してきなよ
赤ちゃんじゃないんだからさ
君が隙だらけのレスをするから悪意のある第三者だか裏の人格だかに良いようにされるんでしょ >>48
ありがとうございます!
Vueでやるにはテンプレートが必要なのは分かりました
<body></body>の何もない所にポンと表示させるのは難しいということでしょうか
なるべくHTMLを触りたくないもので、すみません なるべくHTMLを触りたくないのならフルCanvasでやればいいよ
何もない所、どこでも好きな位置にポンと表示させられるから いくらidが無いスレとは言え勘違いしたなら一言詫びを入れるのが常識。 大前提としていくらGWとは言えこんな時間にここでお間抜けな質問と解答をしてる奴らは皆まともじゃない 一人芝居を披露してくれるのはスレが活気づくからいいんだけど
質問はショボいし煽りもセンスないからクオリティをもうちょっと上げて欲しい
賢いんでしょ?頑張りなよ いやあこの手の人は割とネタ抜きに自分以外が同一人物だと思ってるらしいからなぁ ・質問内容は具体的に。言葉だけでなく、出来る限り再現性を確認したサンプルコードの掲示。
・質問への「答え」から解離した議論はよそでやること。 端から見てるとjs開発者民度低いなあ
気に入らない質問はスルーするより煽るか説教するのに夢中になる傾向
まあ質問者も然りだが たにぐちまことのYouTube 動画に、
jQuery, Vue.js, React もある
$el, $refs は一時的に、実DOM を更新するだけ。
仮想DOM に影響を与えないから、仮想DOM を更新すると取り消される Object.observe()の頓挫がフレームワークを沼にしたんだよなぁ
はっきり言ってjavascriptの範疇で語るのが間違い >>7
document.write は一旦、現存するすべてのDOM を削除してから、追加するものでは? vue.js って後からコンポーネントのロードとかできんの?
一通り日本語ドキュメント読んでみたんだけど出来なさそうなんだよなぁ。
例えばテンプレートのHTMLとかコンポーネントのソースは全部独立した別ファイルにしておいて、
あるボタンをクリックしたら必要なテンプレートとコンポーネントのファイルを読み込んで、
ノードもその時その時でDOMに追加してコンポーネントをインスタンス化するみたいな動き。
どうも new Vue({...}) ってやる前に必要なコンポーネントは使う使わないに関係なく全部読み込んでおかなきゃいけなくて、
コンポーネントの配置元になるバーチャルノードも最初から記述しておかないと機能しないっぽいんだけど、
俺の理解不足?
描画を100%JavaScriptに任せたくて、body タグは空の状態から始めたいんだけどいきなり躓いてる。。。
こういうのって vue.js じゃなくて Angular.js でやるべきなのかな? JavaScriptのフレームワークって時点で休み時間に机にうっ伏して妄想してる根暗みたいなもんだから
それを話題にするせいで皆んなの心が荒むのも仕方ないし、海外のフォーラムでも同じ現象が起きてる 例えが悪かったな
底辺なろう作家がワンピースのストーリーを「俺が考えた方が100倍面白い」って語るのと同じ フレームワークがどうとかではなく、感覚的なイメージをgdgdと日本語で説明するだけの質問だから、明確な解が出てこないんだろ
この程度の質問なら、「そんなことはない」とか、抽象的な回答がお似合いだ 描画関数なら、あるかも。
仮想DOM の知識がいる
is で、コンポーネントの切り替えとか、
v-if="show" で、破棄・生成とか、
keep-alive とか 「Vueでできるのか/できないのか」の質問なんだから「できない」で終わってんだろ 自分が傷つくのが嫌なら悪態つかずに大人しくしとけってことだな >>62
今はproxyとasync関数があるから大丈夫でしょ
もともとO.oでもDOMの変化だったり内部スロットの変化は追えないのだから >>64
ここはJSを自ら学ぶためのスレであって、
フレームワークの使い方を指導するスレではないから
そういった事は他所でやってくれ Progateとドットインストールでjavascript関連を2ヶ月ほどやりました。
ドットインストールでは有料プランに入って以下のセクションを一通りこなしました。
Javascriptではじめるお手軽プログラミング
webサイトを作れるようになろう
Canvasを使ってみよう
よく見るUIを作ってみよう
そろそろドットインストールは卒業かなと思ってるんですが、
次はどういったことをやっていけば良いでしょうか? >>82
覚えたものを生かして作るだけなのに、何を迷っているんだか
やりもしないで「次は何をやればいいですか?」って完成するまで手取り足取り教えてくれる学校の先生を規定しているなら、多分、君には向いてない 結局は>>77
これだけいわれても曖昧な質問を繰り返してる質問者には「お前が思うとおりにやれ」ぐらいしかいえない >>82
1.MDNを隅々まで読む(必ず全ての項目に目は通すこと)
2.その最中重要そうな物は自分の手で試す
3.更に興味が湧いたものを他の人はどう使っているかをググって調べる
これを10年間やる
その後ESやWHATWGの仕様書を読み込む
これで上級者 時間の掛かることを、やらない方がよい。
JavaScript を学んだら、フレームワーク・Ruby on Rails で、実際のweb アプリを作る
その過程で、AWS, Cloud9, Heroku, GitHub, CircleCI, Docker, Kubernetes,
Linux・シェルスクリプト・データベースなどの環境構築運用を学ぶ
HTML, CSS/SASS, JavaScript, jQuery, Bootstrap,
Node.js, Webpack, Babel, Vue.js, React, VSCode 実際のweb アプリを作ることが最も時間がかかるというオチですか NM Max
Ruby on Rails の Tutorialやってみるよ宣言!
https://www.youtube.com/watch?v=PMPY2cFO5HY&list=PLAR5qAGp9riamoBOL2VgZi1JinKWni5Oo
この人は、ほぼ、Ruby を知らないのに、
Rails チュートリアルを読んで、そのすごさに感動して、Rails 5 の動画を作ったw
最近は、Rails 6 の動画も上げてる
Rubyの言語など、あまり知らない人でも、
Rails の動画を上げてしまえるのが、Rubyの面白い所w 7 回視聴 2019/05/15
ワロタ
うん金にはならんかったのねw jQueryのthisの使い方って、javascriptと同じなの? たにぐちまこと・雑食系エンジニアのKENTA、
Ruby のJunichi Ito (伊藤淳一)
このあたりは、YouTube でも超一流 >>93
同じとも言えるし違うとも言える
const $a = $('a');
$a.on('click', function() { ・・・ })
JavaScriptの常識からすると、イベントハンドラの中のthisは$aだと思うかもしれない
しかしjQueryではそうなっていない。thisは$aではなく一つのA要素になっている。
ただし違うからと言ってJavaScriptと違うとは言えない
JavaScriptは元々出来る仕様なので、何をしようとJavaScriptであると言える
とは言え一見JavaScriptと違うんだと思うなら
DOM APIのaddEventListenerの仕様を見てみればその理由がわかる
a.addEventListener('click', function() { ・・・ })
このときのイベントハンドラのthisはA要素になっている。
つまり、DOM APIのイベントハンドラと互換性を持たせるためにjQueryはそうしている
だからイベントハンドラから見れば同じということができる
つまりJavaScriptのデフォルトの挙動ではないが
デフォルトの挙動を変えることで、DOM APIのイベントハンドラと"同じ"にしている JavaScriptはJavaScript、DOMはDOMでしょ
JavaScriptの中でのthisの一般的な使われ方はレシーバを指すこと
a.addEventListener('click', callback)のときはcallbackにとってはaはレシーバではないが、
形上それに近いので本来のJS的にはasync関数を考えればわかりやすいが
thisが与えられないのが自然だが変な気を利かせて与える仕様にされてるんでしょ
JavaScriptはJavaScript、DOMはDOM
それぞれで世界は違うし自然な振る舞いや常識間も少しずつ違う
混同しないようにしないとね ラムダ式(アロー)のthis も、便利なように、構文スコープに変えてあるから、
that = this
みたいに、代入しておかなくても良い スマホのブラウザからtwitterのアプリを起動してtweetさせたいとき
window.open("http://twitter.com/intent/tweet?text=aaaa");
と書いた場合に、ブラウザのtwitterのタブが開いてしまうのですが
どのように対処したらいいのでしょうか?
https://twitter.com/5chan_nel (5ch newer account) 確かに、Edge では、アプリが勝手に開く、URL がある
知らない間に、アプリがインストールされている >>95
>JavaScriptの常識からすると、イベントハンドラの中のthisは$aだと思うかもしれない
いや、ハンドラのレシーバが$aなわけじゃないんだからそう思う人は少ないだろ。
jQueryが通常のイベントハンドラと同じ動作をするという結論はいいとして。 相変わらず、自己学習意欲のないいい加減な質問者ばかりだな
自ら学ぶスレの名が泣いてる 質問が抽象的でわからん!とか言う人一定数いるみたいだけど
アスペ的な人なのか、経験が浅くてエスパーできない人かじゃないの
大抵の質問は「あー、あのこと言ってるのね」ってわかると思うけど
回答して仮にそれで質問者に「そうじゃないんです」と言われたところで
客観的にみて知的活動に変わりなくスレにとってはプラスにしかならないでしょ。
それ以降質問者を責め立てるのは、間違ったことを恥ずかしいと思っていて
スレにとって何の得にもならない名誉挽回をしたいからだよな >>105
ここは右も左も分からない初学者のオムツを替えてあげるスレでは無いから
自立した自ら学ぶ事ができる人がどうしても行き詰まったときに
具体的に質問してヒントを貰いに来る場所だから
そこんとこ勘違いしないように >>105
質問者は努力放棄、回答者だけが努力するスレだと思ってるの? 別にエスパーしてあげる回答者がいてもいいし
こき下ろす回答者がいてもいいだろ
JSとはすなわち言語なのだから
赤ちゃんのときにどうやって日本語を覚えたのかを思い出せ
社畜もいれば言語学者様もいる
雑音も含めた様々な情報のシャワーを浴びることで
徐々に物事の特徴量を抽出して分かるようになっていくものだろ
むしろそのためにわざわざこんな混沌とした場所に質問しに来てるのだろ
スレがプラスである必要はないし住民にその努力義務は一切無い
質問者が自分にとってプラスのように情報を汲み取ればいい >>108
母親から何もしつけられなかったの?
質問者が利益を得るためには、何をやってもいい? ライオンが崖から落とすような、荒波に揉まれる日本語学習過程を経ている人はそうそういない >>109
俺が言いたいのはどんな質問・どんな回答をしても構わない
自由にさせとけということではない
全うで良さそうに見える回答だって間違いを多分に含んでるかもしれないし
狂人の極論的な回答でもそれと対抗する回答と合わせて読めばバランスが取れて
幅広い視野での深い考えを得られるかもしれない
結局回答者の発言の何を汲み取って自分の物にするかは質問者の責任であるし
一方回答者には質問者や場の流れに必ずしも従わず
自分で何を汲み取ってほしいかを決めて発言する程度の権利はある
質問の仕方や姿勢が悪いと注意することだって
質問者は回答者が解決してくれることを期待してこのスレに来るな
回答者と対等とまではいかなくても十分意見をぶつけ合って自分で考えて解決できるくらいまで
勉強して質問を練ってから来いという激励の回答だろう
実際本当のところそうであろうとなかろうとそう捉えて自ら成長できないような質問者は
教えてあげる価値も無いと言われても思われても仕方がない
JSは自分で考えて自分で正解を見つけていかないといけない言語であるし
単純労働者、悪ければ宿題を抱えた学生よりもWeb技術に深い洞察を持って
将来Webを発展させるかもしれない人物に時間とリソースを割いて親身に教えてあげたいと思うのも自然だろう >>108
> 赤ちゃんのときにどうやって日本語を覚えたのかを思い出せ
思い出せない。俺が記憶にある最も古いものは幼稚園の頃の記憶だ >>105,108,111
意見が分岐しすぎて主張に一貫性がない 検索で10件ほど調べたのですがアロー関数のthisが何を指すのか分かりませんでした
通常のJavaScriptのthisは親オブジェクトやbind/callで指定したオブジェクトやnewで生成したオブジェクトを指しますが
アロー関数のthisは必ずwindowオブジェクトを指すわけではないですよね? >>115
10件見て分からないなら、それ以前の基礎知識が足りてない
切り分けを覚えろ JavaScript のthis は、ネストすると、window を指してしまうので皆困っていた。
bind を使うとか、 that に代入する必要がある
それが、jQuery などでは便利
アローは、レキシカル・構文スコープ >>115
アローじゃない関数のthisはわかってんだよね?
アロー関数はthisに関与しなくなったんだよ
束縛しない
だから、アロー関数の中でのthisは
そのアロー関数が書かれたスコープのthisがそのまま参照される つまりアロー関数のthisは普通に変数thisを探すだけということでしょうか? JavaScript のthis は、ネストすると、window を指してしまうので皆困っていたから、
検索すれば、説明は一杯あると思う >>117
ネストしたらwindowになるんじゃなくて
DOM APIの仕様による >>113
それらが同一人物に見えるのならお前病気だぞ >>119
アロー関数による実行コンテキスト上の環境レコードはthisを持たないし
thisキーワードによるレコードサーチにも引っかからない様になっている
一方アローでないレキシカルな関数コンテキストでは必ず引っかかる
他はグローバルな環境レコードでは必ず引っかかるが、その他の環境レコードでは引っかからない
よってレキシカルな関数の環境レコードをL、アロー関数の環境レコードをAとしたとき、
L内スコープでthisが参照されると引っかかるのはその時の実行コンテキストから辿れる一番近い関数の環境関数レコード、つまりLから必ず探されるが
A内スコープでthisが参照されるとその時の実行コンテキストから辿れる一番近い関数の環境関数レコード、つまりAも引っかからないので
更にその外側から探され、直上のレキシカルな関数の関数レコードかグローバルな関数レコードから探されることになる 大間違い
レキシカルを全て非レキシカルに読み替えてくれ 非レキシカルの中に含まれるレキシカルも
非レキシカルに読み替えてくれ 非レキシカルの中に含まれるレキシカルに含まれるレキシカルも
非レキシカルに読み替えてくれ JavaScript新しく勉強したいんですが入門本オススメありますか?web系の勉強は初めてでプログラミングはPythonとjavaなら初級レベルです サークルの在庫管理システムを作りたいんです、とりあえずそれが目標であとは勉強しておいたら損は無いかと 今日、お昼2時から、YouTube ライブある!
たにぐちまこと
いまどきの JavaScript入門 - ES6/TypeScript/Vue.js
https://www.youtube.com/watch?v=NJ5kIaXbpZQ >>131
Google の開発者も読むのは、表紙にサイが描いてある、いわゆるサイ本
昔のサイ本は、Ruby の本も書いていた、Flanagan の本。
JavaScript 第6版、2012、David Flanagan
今のサイ本は、
初めてのJavaScript 第3版 ――ES2015以降の最新ウェブ開発、オライリー、2017 >>134
だったらそんなに長く基礎的な勉強をしていくってわけにもいかないだろうし
Pythonかjavaをバックエンドに、GUI画面をWebで作りたいってことだろうから
サイ本でじっくり勉強するっていうのはあってないかもね
サイ本っていうのはJSに仕様の隅々まで解説するやり込み向けのいわゆる「攻略本」だから
2言語が使えるって言うならとりあえずMDNのJSの再入門でも読めば
JSがどんな言語が薄っすら掴めるはずだから
あとは適当なフレームワーク本買って、物を作った後にサイ本でも読むのが良いかもね つかJSいらなくね
formさえ用意すればいいじゃん
あとはデータからHTMLの組み立てを
pythonでやるかJSでやるかってくらいじゃん バックエンドで完結させてからjsに手を出せ
順序が違う >>135
に書いてあるけど、たにぐちまことのライブ、始まった!
4時まで! PythonもJavaも初級レベルならJavaScriptでいきなりフロント作ろうなんて辞めとけ
造り手が知識も経験もないんだから、在庫管理程度ならスプレッドシート共有でまず始めること
土台のバックエンド、フロントエンドのスキルが身についてから作成したほうが利用する周りの人たちにも迷惑かからんで良いと思う 画像の読み込みに関する某書籍のサンプルコードについて質問です。
//ページのロードが完了した時に発火するイベント
window.addEventListener('load', () => {
// まず最初に画像の読み込みを開始する
imageLoader('./image/color.jpg', (loadedImage) => {
// 引数経由で画像を受け取り変数に代入しておく
image = loadedImage;
});
});
//画像をロードしてコールバック関数にロードした関数を与え呼び出す
function imageLoader(path, callback){
// 画像のインスタンスを生成する
let target = new Image();
console.log(target); //(1) <img src=“./image/color.jp”>とコンソールに表示される
// 画像がロード完了したときの処理を先に記述する
target.addEventListener('load', () => {
// コールバック関数の引数に画像を渡す
callback(target);
});
//画像のロードをするためパスを指定する
target.src = path; //(2)
} (1)で <img src=“./image/color.jp”>とコンソールに出力されます。
(1)の1行前で、 console.log(new Image())とすると、
コンソールに<img>と表示されるので(1)も<img>となると思いました。
(1)の時点では(2)で./image/color.jpg を読み込む前なのに、
なぜ<img src=“./image/color.jp”>となるのでしょうか? Image()
https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/Image
そんなややこしい書き方をせずに、これじゃダメなのか?
var myImage = new Image(100, 200);
myImage.src = 'picture.jpg';
document.body.appendChild(myImage);
結果
<img width="100" height="200" src="picture.jpg"> >>131
web 系なら1年ぐらい、Ruby on Rails で、
VSCode, HTML, CSS/SASS, JavaScript(ES 2015)/TypeScript,
jQuery, Bootstrap, Node.js, npm/yarn, Webpack, Babel, React, Vue.js
他には、実行環境構築。
Linux, WSL, Vagrant, Docker, Kubernetes, CircleCI, シェルスクリプト・PowerShell
Rails チュートリアル日本語版の1つ前のバージョン(Rails 5)が、無料で読める 【環境】node.js v12.16.0
【何をしたのか】
// promiseを返すメソッド
NativeModules.module.test
この関数をラップして、resolveの場合の処理をあらかじめ用意していたものをよんでから、thenを呼び出したいです。
/**
* イメージ
*/
main(){
NativeModules.module.test
.then( retval => console.log("2") )
.catch()
}
// この部分を作りたい
async lap(){
NativeModules.module.test
.then( retval => console.log("1") ) // thenの処理を上書きしたい。。
}
// 実行結果
main()
1
2
のようにするにはどのように書けばいいのでしょうか?
必要とな知識も教えて欲しいです。
よろしくおねがいします >>145
オブジェクトをconsole.logした場合その時点でスナップショットを取ってるわけではなく変数に代入するのと同じで参照を保持するだけ
ブラウザのコンソールは非同期動作なのでconsole.log直後に対象オブジェクトを操作すると実際に表示する時には中身が変わってる事がある
(2)の所にブレークポイントを設定しておけば<img>と表示される Promise.prototype.then()
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Promise/then
then メソッドは Promise を返すので、メソッドチェーンができます
関数が then にハンドラーとして渡されると Promise を返します。
同じ Promise がメソッドチェーンの次の then に現れます
p.then(function(value) {
console.log("1");
}).then(function(value) {
console.log("2");
}); >>150
Ruby でも、端末に表示する順番が変わることはあるけど、
まさか、表示が遅れている間に、表示するオブジェクトの内容が変わってしまうとは、思わなかった!
先に、表示する内容がバッファにコピーされてから、表示されるのだけが遅れていると思っていた >>131
【2020年最新】web制作のjQuery,JavaScriptの勉強方法まとめ【一年半思考錯誤した】
https://www.youtube.com/watch?v=4O-wCPiB2m0
このYouTube 動画の中では、この本を勧めている
確かな力が身につくJavaScript「超」入門 第2版、狩野 祐東、2019
CSS セレクターを学んだら、実際に、jQuery で、
jQuery Plugin にあるようなスライダーなどの拡張機能を、自分で作ってみる リャクト、ビュッ、アンギャー、ノド、タイポスクリプツ
一つも触ったことないけど多すぎて意味不明すぎる
しかもこれって将来的に全部また別の何かに置き換えられる可能性大なんだよな
覚えるだけ時間の無駄やん
ジェキュリーは一生なくならないだろうけど >>156
次元の違うもの並べるの気持ち悪くない? jqueryみたいにjsのパス貼るだけで簡単に使えるなら勉強しようって気にもなるんだけどねぇ
javascriptごときでインストールってなんだよアホか それ自分はその程度のものしか作れませんって言ってるようなもんだな 置き換わるのが嫌だから学ばない、と言うなら言語そのものだってその可能性はある。
水物が嫌だと言うならそもそもこの業界に向いてない。
置き換わって陳腐化してしまう技術は少なからず有るが、その習得で身に付けた書く力や読む力は無駄にならず、新たに何かを習得するときの吸収力になることも多い。 >置き換わるのが嫌だから学ばない、と言うなら言語そのものだってその可能性はある。
言語そのものと言語が存在しないと成り立たない小手先のライブライを比較してる時点でただの屁理屈
>その習得で身に付けた書く力や読む力は無駄にならず、新たに何かを習得するときの吸収力になることも多い。
脳のキャパシティは無限じゃないから廃れる技術を学ぶだけ時間の無駄
しかも新しく覚えたことで既存の知識が曖昧になる可能性も高い
そもそも言語ですらないし
経験浅いくせに適当な屁理屈ばっか言わないように 一度もケンタの動画見てないのに
つべのおすすめ欄が奴の動画ばかりになったんだが何故? Python でAI をやりたいとか書いたら、
Pythonをやるには、まずRubyから始めろって言われたとか?
KENTA の自論
初心者は、Pythonから始めるな。
長期間学んでいる間、食えないから続かない
1年ぐらいで、Ruby on Rails で、フレームワーク・システム構築運用を学んで、
食えるようになれと言うこと
Pythonは、大学院卒とか高学歴用。
プログラミングじゃなくて、数学・統計の勉強に、時間が掛かる
Rubyみたいに低学歴で、プログラミング・OS・Linux 環境構築運用・フレームワークとは、分野が異なる >>166
最近Ruby案件も
食えるほどないような気がする
学んでる段階で食えるようになりたいなら
なんだかんだでPHPが今でも一番球数豊富な印象 別に食うために仕事しなくてもいい
どうせ近い将来にはシンギュラリティおきてベーシックインカムになってるんだから
今の日本でも収入低かろうが適当に生きていけるし
自分がやりたいことをやりたいだけやればいい
安易に需要ありそうなところに飛びついても競争相手も多いし3流で終わる可能性が高い
それよりも地味でも自分にあってるところにチャレンジした方が
自ずと上達も早いしモチベーションも高まるし結局はそっちの方が収入多いってこともある
今からの時代仕事にしろ国民は徐々に好きなことしていかなきゃ
そのうち仕事するのにむしろお金を払わないといけないとこまでいくんだからさ
多くの人類の価値なんてそう高くないんだから社会に貢献とかできないから好き勝手に生きた方がいいよ
もはや社会は勝手に成長するから一人一人がどう楽しく生きるかを考えることの方が大事 (JavaScriptを自ら学ぶ)『人のための』質問スレッド
だからこういう悩み相談もいいんじゃない?
人間は正解不正解だけを常に求めるロボットじゃないんだから Electronで簡単なGUIアプリケーションを作成してJavaScriptを勉強しようとしたのですが
亜種のTypeScriptの質問もここでいいですか?
最初Electron+TypeScript+React+Material-UIで勉強しようとしたのですがMateriak-UIを組み込もうとすると
TypeError: Cannot use 'in' operator to search for 'ontouchstart' in null
と言うエラーが出て動もうまく行きません
Material-UIがダメとなるとGUIから選定のし直しで、おすすめが知りたいのですが・・・
(Reactが何なのかよく分かりませんが、GUIを変えると変えないと駄目ですよね?) >>171
なんでよくわからないもの使ってるんだよ
ど初心者なら
とりあえずjsでやんなよ
そうやってエラっても、エラ〜メッセージの意味すらわからんだろ >>171
エラーメッセージに何がダメなのか書いてあるじゃん Ruby on Rails なら、TypeScript(TS) + React, TS + Vue.js はあるけど、
TS + Vue.js は、まだ互換性が高くない
Rails 以外では、TS + Electron もある
React+typescript入門
https://www.youtube.com/playlist?list=PLp_EUEO9JJP2CpdD9myEwF0CxVIJEWIgG
material-ui を使っている。
この人、26個も動画ある!
他には、YouTube 動画は、たにぐちまことの動画が良い >>174
ν速にRubyのスレ立ってるからそっち行けよ こういう動画見てると再生伸びない奴の理由がよくわかるね
入門とか環境構築と言いながらいきなり前回がどうのこうのとか
いきなり変なところから説明入る上にタイピングが動画の大半占めてて冗長すぎる ブラウザ上で何らかの操作をしたいという場合、アドオンの開発環境を経由するのが普通ですか?
自分がサイトの管理者ではありません 拡張機能と言っても別に対して難しいものでもないのだから
そもそも悩むようなことでもない
拡張が良いかもしれないなと思ったらそのレス書いてる間に作ってみればいい
色々やってみてからここに来い
ちゃんと経験をしろ
例え失敗してもそれが無駄になることはない
ここでなんとなくの答えを聞いただけじゃ自分の身にならないだろ >>177
tempermonkeyを使うという手もある
その場限りなら開発ツールでok >>178>>179
どうも
インスペクタからでもいじれるんですね メニューと本文のあるページであるメニュー要素をクリックしたら
画面遷移しないでXHRでとってきて本文を書き換えようと思ってます
といってもちゃんと各ページは用意しといてURLでもアクセスできるようにしたいので
XHRで書き換え後JavaScriptでURLも書き換えることが出来るのでそれをしようと思ってます
それで検索エンジンなどにも正しく扱われてほしいので
メニューにリンクをつけてa hrefでページを指定したいと思うのですが
それではそのページにいってしまうためXHRでソースを取ることができなくなります
こういうのってどういうふうに設計したらいいんですかね?
例えばa hrefに指定したmenu3.htmlページには実際いかないで
XHRでget?menu=3にアクセスするようなことって可能ですか? >>179
その場限りじゃなくても
sourceタブで編集して保存すれば恒久的に変更させるでしょ >>181
今のgoogle botはごく一部の機能が制限されてるだけのまんまChromeなので
pjaxも普通にリンクを擬似クリックしてJSを実行してくれるので気にせず作ればOKよ
昔はbotとやり取りするためのURLの形式とかあったけど今はサポートされていない
今は普通に作ることが推奨されている >>183
ありがとうございます
pjaxなんて名前があったのですね
一応基本をおさえておきたいので早速ググってみます >>181
a要素にclickイベントハンドラも付けてpreventDefaultすればページ遷移しない 今やってる書籍のコードで以下のようにブロック内にセミコロン入れてるのが頻繁に出てくるんだけど、
こういう書き方って普通なの?
if(isComing === true){return;}
ドットインストール仕込みの俺の感覚だと、
if(isComing === true){
return;
}
このように書くのが当たり前かと思ってたんだけど。 if (isComing) return;
1行で書く場合は波括弧使わないのが多い印象 セミコロン絶対つける派と不要派の宗教戦争やりたいなら他所でやろうね >ブロック内にセミコロン入れてるのが頻繁に出てくるんだけど
>>186の下もはいっとるやんけ、1行に違和感感じたってことか?
JSがメインって人はそんないないし
そのへん普段使いの言語や勝手にコード整形するIDEが何かで感覚は変わる
郷に入れば郷に従いたいというなら標準的なコーディング規約に従えばいいよ
JSの場合は何かな?
JavaScript Standard Styleはセミコロンが禁止になってるけど
Google JavaScript Styleは常に必要となっている >>29
勘違いが嫌なら>>1のルールを守りましょう
他人があなたを詐称することが不可能似なります >>190
意見の出し合いを宗教戦争だと決めつけるだけの発言しかしない君が他所へ行った方がスレの利益になると思うよ >>186
「ブロック内」ってどこを指してるの?
普通は{}の中をブロックとするけど、どちらもセミコロン入ってるじゃんw >>186
1行で書いてる事を指してるなら、それはブロックとは言わない まあ普通はこう書くよね
if (isComing === true) {
return;
}
もしくはこう。
if (isComing === true) return; 186の書いてることが矛盾してる時点でこれ以上の議論は無意味 >>199
どこが矛盾してんの?
ブロック内のセミコロンって
{return;}のことじゃないんか? どっちのブロックにもセミコロン入っとるやん
主語がセミコロンなんだから、ブロックの記述位置なんて関係ないやろ
どっちかセミコロン抜いてからブロックの話しろや あのpythonゴリおしだったgoogleさんでさえセミコロン入れろ言うてるしな VSCode のデフォルトが、Beautify だろ。
拡張機能のPrettier とか
; を付けるかどうかは、これらの設定で変わる
その後、Webpack で圧縮されると、無くなるかも知れないし コーディング規約とかとは無縁のとこで生きてるんだな
近寄りたくない人種だわ 仕事でコード書いているか、趣味で書いているかの違いじゃね
このスレ両方が入り乱れている わりと長いことやってるけど
仕事でセミコロンなしの規約にはまだ出会った頃ないなあ
特に規定がなかったとしても、付けない人にも出会ったことない Electronやらnpmで採用されてるJavaScript Standard Styleだと
セミコロン禁止になってる
https://standardjs.com/rules-ja.html >>210
規約と個人がどう書くかなんて関係ないだろ
手元で好きに書いてプルリクする前に整形すれば良いだけじゃん
規約は個人が自分の手元で書くときに作業効率落とすためのものじゃないだろ。 あるボタンクリックが押下された時に、
ラジオボタンで回答する選択式のアンケートウィンドウのようなものを出して
その回答をサーバにまとめていきたい場合、
promptが最適でしょうか?
参考情報頂けますと幸いです。 例えばpythonは(行末に\がなければ)1行と判定できるコードなら必ず1行と判定するのでセミコロンがなくても安心して実装できるけども、
jsでセミコロンを省略した場合はそうなら ないことがあるのがすごく微妙…
振る舞いはバッドノウハウとして覚えておくしかない。
とはいいつつ省略派なんだけどね javascriptは仕方なく過去のクソ仕様を引きずらないといけないから許してやれ >>216
今どきのエディタなりIDEは書いてる段階でリアルタイムで構文チェックされるけど?
後から整形とか時間の無駄じゃん パーサーの問題だからセミコロン云々なんてどうでもよー
言語1つで演算子の意味も違うんだ
VBなんか見るからにイライラしかしないやつと比べたら
普通の言語ってだけでかわいいもん
ま完全に切り替えるのは無理だからコード補完ないと構文まちがうけどね 意図しないくっつきって
偶々関数書いてその次に即時関数を書いたときくらいなものでしょ
他にも考えられるけど、それはセミコロン付ける派が書き忘れて問題になる可能性よりも小さい
よって即時関数の前にはセミコロンを付ける癖だけ付ければ何の問題もないし、
即時関数を書かないという人はそもそも問題にならない
カッコから始まる行は付けると考えてもいい >>223
もっとしょうもない話だよ
若い層には信じられんかも知れんが
90年代後半〜00年代前半ごろは
コード書いた人の意図に関係なく改行を消されたりすることがあったんだ × 90年代後半〜00年代前半ごろは
○ お前とその周りでは(※類は友を呼ぶ) 改行を消されたりするってのがよくわからん
if (なんか条件)
return ほげほげ;
とか書いたのを
if (なんか条件) return ほげほげ;
とかいうレベルの話ではないんだよね 昔は容量の都合でプログラムはなるべくコンパクトだったからな
ナローバンド時代にWebでボトルネックになってたのは画像だしJavaScriptは関係ないけどな
高校の頃意図的に帯域しぼられたサイトからエロ画像ダウンロードするのに夢中で
電話線占領して1枚表示に5分ぐらいかけて月に2万電話代かけて集めたもんよ
今思えば無駄でおそろしいことをしてたな 草の根時代前期ならまだしもWWW時代ならテレホあったろ
エアプかよ >>227
> コード書いた人の意図に関係なく改行を消されたりすることがあったんだ
結局、これは何だったんだろうな プログラム作る動機ってなんすか?
たいてい優れたフリーソフある >>234
俺も記憶が定かではないけど
当時のyahoo.comのサーバがそういう設定してて真似したとか
そんな話だったのではないかと思う どう読んでもローカルファイルの話題なんだが、>>227,238だけサーバの挙動を問題視していたオチか 【告知】大阪で1番恥さらしな男!!これまで誰一人として語れなかった覚醒剤中毒者の泥沼の世界!!そして警察官、刑務官、裁判官のええ加減さを真実のみを赤裸々に語り最低中の最低の究極のゴキブリ男が恥を承知の上で書いた渾身の力作!!
ノンフィクション自叙伝!!
【ゴミと呼ばれて刑務所の中の落ちこぼれ】
中学2年の時に覚醒剤を覚え17歳から45歳まで【少年院1回、刑務所8回、合計20年】獄中生活を体験したが、ある女性との出逢いで生き方を180度変えて鉄の信念で覚醒剤を断ちきり見事に更生を果たした感動の奇跡の一冊!!
全国の書店&ネット通販でどうぞ!! >>238
あれ
セミコロンと改行の話ではなかったん?
そりゃまた失礼しました sessionStorageでデータを保持すると数値が文字列になると書いてあったのですが、
何故か数値のままです。
ブラウザはchromeでJSON.stringifyを使って格納し、JSON.parseで変換取得してます。
num : [1, 2, 3...] みたいなオブジェクトだからでしょうか? >>242
文字列ってそのjsonのことだよ
JSON.parseしてるからまた数値に戻る >>239
意味分からん
いつまでも同じ話題に固執してるのはお前くらいだぞ >>245
> いつまでも同じ話題に固執してるのはお前くらいだぞ
>>227が全く理解されなかった状況を見るに、勝手に話題を変えたお前だけがそう思ってるのかわけだが >>244
なんと!
ありがとうございます。
JSON.parseはJSで扱える形式に戻しているだけかと思ってました。
助かりました。 >>233
ISDNやテレホなんて導入してたのはオタクの家ぐらいだろ ネット利用者の3割がテレホに加入していた時期があったんだが。 >>239
ウェブサーバが送出するときに
改行と行頭のタブ、スペース取っちゃうんだよ >>247
ややこしい話だけど
{ a: 1 }
これはJavaScriptのObjectオブジェクト
プロパティ名aで、その値の1にアクセスできる
'{ a: 1 }'
これはただの文字列(Stringオブジェクト)
なにもできない
このJSでのオブジェクトの書き方がデータの記述にとても向いてるので
テキストで保存できるデータ形式として確立したのが
JavaScript Object Notation、略してJSON
オブジェクトを文字列に変えるのが、JSON.stringify
文字列をオブジェクトに変えるのが、JSON.parse >>246
俺は話題を変えちゃいないがください
客観的に見ておかしいのはお前だよと言ってるんだよ
そういう自分に都合の良いように思い込むところもな
自分しか見えてないんだよお前は >>227
「俺だけがついていけない = >>228-230他分かってない発言が全部俺」と思うなら、そうなんだろう
俺以外は>>227が>>238と分かってたんだろうな >>248
エロ画像漁りまくってる猿がオタクで無いわけないだろ
エアプの上にエアプ重ねてるんじゃねえよ つうかオタクの家って親がオタクって意味だからな
回線に関してたかだか高校生がわかるわけねーだろ
オタクの子はオタクかもしれんからわかるかもしれんがなw 日本人の3割はオタクってことか。
あながち間違ってないか… オタクを馬鹿にしてなんのオタクにもなれずに死んでいくとか虚しいな 画像表示がネックだったっていう与太話に、
いちいち喧嘩腰で食いつくからこういう変な流れになる。
いくら初級者向け言語だからって頭のレベルまで落とす必要ないだろ。 与太話じゃなかったか。
16kb画像表示にISDN64kbpsで理論上2秒かかるからな。 別にネックじゃない
その時代はそのくらいでも待てた
今の基準で考えるのがおかしい どう考えてもネック
上からズッズッズ・・・って
ちょーっとずつ表示されるjpegにイライラしてたのをよく覚えてる 当時のjavascriptといえば装飾系のしょうもないやつでさらにイライラしてたけどね
マウスにキラキラがついてくるやつとかな あれは当時のPCスペックでは重かったし要素がリンクにかぶるとクリック妨害したりで害しかなかった
今なら透過処理で目立たなくしたりpointer-events: noneで単なるエフェクトにできるから大分マシだけど
昔より趣味でHTMLやJS書いて公開してる人は減ったように感じる >>263
君が個人的にイライラする事にネックという言葉を持ってくるのは違和感
ネックとはインターネット体験全体における弱点ということでしょ
実際は帯域はきちんと体験やコンテンツの量質と伴って進歩してきたのだからネックとは言わないと思うよ
新幹線ができる前は電車の速度がネックとは普通言わないでしょ 何その俺俺用語
ボトルネックを解消するために人は進歩するんだろ
何いってんだねチミは リニアモーターが開通するのは分かってるから現在の新幹線はネックだって話ですかね 究極は瞬間移動だしな
そりゃ当たり前だろ
金やエネルギーや環境負荷の問題があるから進むにも進めないだけで 身の丈に合わない高みばかり見て
すぐすぐ実現できないことをネックと言うのは違うと思うぞ
人間は寿命が100年しかないからネックだとか何にでも言えるが
詩的な場面でも無い限りそれに意味はないだろう ちょっと何言ってるかわからない
そもそもリニアとか持ち出した時点でファーーwwwwだったんだけど
時間がかかってるってのはそこにボトルネックが存在するってことだ
今はそれが標準だからそれでいいって問題じゃねーのよ だから新幹線はボトルネックなんでしょ?君の理論では なんで新幹線というオブジェクトに固執してんのか意味不明
リニアにしてもそうだけどもっと周りを見ろ
1つのオブジェクトをさしてボトルネックだなんて誰も話してねえんだよ ボトルネックっていう言葉覚えたての中学生が喧嘩してるだけ
今日も平和だね >>228 >>233
コイツはなんでも噛み付くから草 要するに上を見ればきりがなくて、その時点で最善の結果を出してるものを
ボトルネックと言ってもそれはただの愚痴でしか無くて意味がないという話だな 効率を高めるためにどんどん新しいものが出るのは問題点があるからで
改善すべきポイント(ボトルネック)が明らかに存在してるのに
現状に満足して現状最善の結果(キリッ
とかそういう問題じゃないっていってんのに
というか最善じゃねーだろ それこそ個人の感想だわ こういう進化できない原人タイプがこういうスレに居るのが驚きだわ
向いてないからやめたほうがいいよ >>274
当時のナローバンドがボトルネックって言い続けてる馬鹿に分かりやすく
例えを挙げられていることにも気付かない馬鹿という証明をご自身でされましたな
おめでとう ナローバンドがボトルネックってまた言ってもない大嘘こいたな
だから視点が狭すぎるっていってんだろ
ある条件下においてある事象を扱う時何がボトルネックになるかって話なのに
ノータリン原人はそのまま退化してろ 他所でやれよと
自分だってスレ違いのクソ口喧嘩に辟易したことくらいあるだろう sessionStorageを使って処理を行っています。
chromeの新規タブを開いた際のお気に入り的なボタン?から飛んでくると
古いsessionStorageの値を保持していてエラーが出てしまうことがある
ようなのですが、値を保持していないときもあるようで困っています。
何が考えられますでしょうか? >>286
あったことをなかったことにして話をすり替える手法がお得意ですね >>289
的はずれな新幹線君に言われたくないがおまえの頭が悪いだけだろ
どのレスがそういったのか具体的に明示してみろ
単なるお前の思い込みでひとり暴走してたのがよくわかるから >>283,284
>>効率を高めるためにどんどん新しいものが出るのは問題点があるからで
だからこそ言われてるんだと思うよ
例えば過去のJSにはclass構文が無かったから駄目だったって話をしたらそれはおかしいという事になる
過去のJSの使われ方では過去のJSの仕様で良かった
でも使われ方が変わってきたから言語仕様も使われ方と共に進歩してきたんでしょ
それを最初から今の仕様であることを望むのはおかしいし
むしろJSはシンプルで拡張性があったからこそ長く使えてこれたってこともある
今のJSには型がないがそれがボトルネックか?
改善すべき点が常にあるのは当たり前のこと
常に時代は動いているのだから
逆に言うと時代とともにずっと動いているものをボトルネックとは言わないし、
言っても仕方がないということは分かるだろう
当時ボトルネックだった、ではなく未来がある限り永久にボトルネックなのだから
ボトルネックというのは一時的で解決できるか解決できたな事柄に使わないと意味がないという話 着眼点が違うから話し合いになってないってことにいい加減気づけよ
物理やら理論やらと国語の話みたいになってんじゃん >>288
そんなもん
sessionStrageはその名の通り
セッションに依存して期限をごにょごにょするものなので >>290
もう忘れたのおじいちゃん?
検索の仕方も忘れちゃったならもう寝ちゃいなよ >>232に対して>>262という話でしょ
232を肯定するなら新幹線もネックでしょうよ
その辺うやむやにして何勝利宣言に固執してるんよ 解決しなきゃ意味がないとか個人的な感想はどうでもいいわ
問題の認識さえ出来ればそこにボトルネックは存在するという事実のみ
つうかいつまでも今は過去はとか固執して的外れなこと言ってんじゃねーよ
比較してるのはマルチメディアとテキストだろ
テキスト(JS)だけならスムーズなのになかなか進まないという事象に対し
表示のボトルネックになってる部分は画像の大きさか速度にあるって話が>>232だろ
ある程度理論をたてた上で希望的観測を含めたようなものと違って
解決可能なことがわかってる初級問題みたいなやつなのに
こんなもんかと思考停止して認識できない無能が愚痴扱いしてんじゃねーよ 画像がボトルネックだという表現が間違い
画像はリッチコンテンツ、当時は特にそうだったのだから表示に時間がかかるのは当たり前
今はスマホで無料で山程ゲームができるけど、昔はゲーセンに行って手間も金もかかったと言ってるようなもの
そういうのを一般的にボトルネックとは言わない
改善点をボトルネックというのではない
ネックなのだから弱点であるものをいう
画像はリッチコンテンツでWebにとって必須のものではないのだから
あえて当時それを大量に配布して、あえてそれを大量に収集した
体験がどうのというのは完全に個人的な話
一般的にボトルネックとは言わない だから視野が狭いっていってんだろ
HTTPの全体として見れないノウタリンが
典型的なwikipedia脳で思い込みが激しすぎるんだよ >>301
だから視野が狭いって言ってんだろ
人員輸送の全体として見れない脳足りんは
新幹線はボトルネックというのも理解するべき 新幹線がボトルネックというのは変だな
何故なら今は新幹線しかないでしょ?
新幹線のある世界でお前は乗っちゃ駄目と言われてるのなら
それがその人の仕事効率においてボトルネックとなり得るかもしれない
それでも電車がボトルネックというのもちょっと変だ
ボトルネックなのは新幹線に乗っちゃいけないという制限の方だろう
何れにせよ自分が食い意地が貼っててデブで歩みが遅くなったからと言って
食べものやレストランや世界のせいにしてはいけない
それはなるべくしてなったことで個人の問題だ だからナローバンドでの画像表示がボトルネックというのが当時の話
ってのがおかしいという話なんやぞ >>305
次の課題は4k 8kだもんな
コンテンツが先いきすぎてるから
ただ提供者側が自重してるだけだしね
コンピューターが扱うデータだけ肥大していく 4K8Kの写真や映像の配布ってそれはただの写真や映像のHTTPSでの配布であって
それ自体で完結してるコンテンツなんでWebとは関係ないんじゃ・・・ >>303
頭悪すぎ
新幹線出すないってるのは比較にもならないやつを持ってきて
何がしたいの?アホなの?っていう話をしてるわけ
新幹線がボトルネックって話を俺はしてんじゃねえんだよ
持ち出してきたからそうだよと言ってやっただけで
JSの下りにしてもそうだけど類人猿ってしょうもない頭悪い例えだすよな
例えってのはわかりやすくするためにあるんだぜ?反省しろ猿
人は楽をしたいから機械をつくったんだろ
まだ満足してないからどんどん新しいものがでるんだ
改善するためのたくさんの観測済みのボトルネックは存在する
トンネルぶちぬいてまーっすぐ北海道と九州を直線のレールにすれば
理論上浮上走行式でない新幹線車両だって今のリニアに近い500km以上は出るわ
(安全上制限してるだけでリニアはそれ以上出るけど)
地球上を走る場合ほとんどのロスは空気抵抗によるものだし
ハイパーループ構想は最近出てきたけど
とっくの昔から真空管を走らせば空気抵抗がなくせるぐらいは認識してたことだ
目指すものが1000kmの場合それらがボトルネックとなってる
ボトルネックを語るには何を望んでるかと何を比較対象にするかが適切であるべき
質量も持たないデジタルデータとごっちゃにするな猿 >>309
ボトルネックとは首のように細くなってててポッキリいったり詰まったりするところだ
だけども普通の人間の首はボトルネックとは言わない
確かにドラえもんに比べれば弱点かもしれないが、普通の感性ではない
皆はお前みたいに頭が未来にぶっ飛んでないんだよ
今を生きてるの >>309
だーからお前の言ってることがまんまそれだから分かりやすく新幹線言ってるだけだ馬鹿 >>310
ドラえもんのように見えてたものがよく観察してみたら人間だったっていう話だろ
気づくか気づかないかの問題で気づかないやつはそのまま今に満足してろよ >>311
次元の違う話題もってきてわかりやすくもなんともねーわバカ
たとえ話なんてのは意味のないもの
頭悪いのも大概にしろよ ナローバンド時代はナローバンドがネックだったキリッ
と馬鹿なこと言ってることにいつになったら気付くんです? なんなんコイツ?池沼なんか?ほんと理解力ないな
うまくオウム返しできてるつもりなんだろうがお前の頭腐ってるよ
ナローバンド時代に画像の転送がネックだった
!=
ナローバンド時代はナローバンドがネックだった
これが理解できないならお前は今すぐプログラムをやめろ 頓珍漢な例え話出してみたり
言ってもないことを言っただの見境なさすぎだろ
そんなに勝ちたいなら勝ち譲ってやるよ
もうお前の相手するのは時間の無駄なのがよくわかった 石器時代は石器がネックだった?
そのとおり!
今では繊細な金属加工ができるもんな! 画像の転送がネックだったって文章おかしくね
画像の転送って、画像を転送することが目的であって
ナローバンドを通して画像を転送することが正に目的なのに
ナローバンドを通して画像を転送することがネックにはなり得なくね
例えば未来人が現代人を見て、
月に行くには数少ない企業に大金を積んで、
長期間待たないといけないなんて
現代における宇宙旅行はネックだったねとか言うか?
言葉がおかしいでしょ
結局はただ単に、自分が画像をシコシコ集めてましたという思い出話でしかなくて
Webがどうこうだのネックがどうこうだのという話ではないよね 誰か第三者に認めてもらえないと終わらんぞ
誰か認めてあげてくれw ナローバンド時代テレホなしでエロ画像をせっせとため込んで親に迷惑をかけまくったクソガキの何を認めろと? しっかし自演ばかりの多重人格者だな
まあお前がそれでいいならそれでいいけど
そんな勝利じゃ虚しいだろう
誰か褒めてくれるまでおとなしく待っときなw 上から目線で命令するだけの人は無責任に楽できていいねえ ドラえもんだー石器時代だー宇宙旅行だー
いろんな意味のない例え持ってくるけど
もう5週ぐらいループしてんのに気づけよ
これ以上何を議論したいと言うんだ?
単に自分が正しいっていう承認欲求だろ
そんなのに付き合ってられるほど暇ではない
上から目線って君なんて言葉使っちゃうやつに言われとうない googlemapにコメントがありますが、このコメント数を都道府県ごとに表示するというプログラムは何の言語を使うんでしょうか?phpですか? >>327
君が余りに意地を張るから周りがそれはおかしいよと諭してあげてるんだよ
この先君が恥をかかないようにね >>327
暇じゃないってご冗談をwwwwwwwwwww
ナローバンド並にトロい感覚をお持ちのようでwwwwwwwwwwww おい、エア仲間作って張り合ってないでいい加減空気嫁よ >>331
google mapのコメントといえば施設につくものだから、
東京都の皇居、都庁、セブンイレブンなんたら店、株式会社なんちゃら…
といった膨大な数の施設につくコメント集計するってことだよね?
googleがAPI提供してるなら別だけど、
してないならそんな膨大なデータを個人で作るのがまず不可能じゃない?
googleに四六時中DOS攻撃することになるほど更新も大変だよ。 >>331
あのコメントをまるっと取得できるAPIってあんのかなあ
あればきっとそこに座標データがあるだろうから
逆ジオコーディングAPI的なので都道府県は取得できるだろう
言語はなんでも好きなのでいいよ 目的にもよるけど、
県庁から一番近い牛丼屋とか、その都道府県で一番訪問者の多いデパートとか、
似たような属性持つ店を100件ぐらい抽出して比較するのが現実的。 全部は無理か
やりたいのは釣り場のポイント情報とか
単純に釣り関係のコメントが多い場所は、釣れると考えられるから うーん、こう言っちゃなんだけど
いくら機械が高性能になろうと、いくらAPIが充実しようと、
それを使う人間の頭がボンクラじゃボンクラな物しかできないよ 釣り関係の情報・投稿を大量に集めたサイトなんていくらでもあるのに
どうしたらgoogle mapから引き出そうと思えるのだろうか? グーグルマップで検索すればでてくるのにそれを集めてどうするんだよ
グーグルマップのほうが便利だから誰も使わんだろ そんな使い方してたらGoogleMapsAPI無料の範囲でおさまらんだろうにAPIに金払ってまで釣り場情報を取得したいのか >>348
あれアクセス回数で課金だから
コメント拾うくらいなら
月200ドルぶんのアクセスでもなんとかなるんじゃね? まあ総合的に言うと自分が住んでる地域の周辺の情報だけを
自分の興味のために取りたいっていうのなら現実味がある
それを公開して全国的に行おうと思ってるのなら無理がある プログラミング言語って音は出せますか?
フリー音源を使用するのだと思いますが、音声自体から作る機能というのはありますか?難しいでしょうけどね。
https://musiclab.chromeexperiments.com/Song-Maker/ >>351
じゃあ今お前のPCやスマホから出てる音は何が鳴らしてんだよ
中にどんな音も出せるおじさんでも入ってんのかと ↑そうではなく、サイン波云々ありますけど、あそこから作るのかどうかということです。 >>353
そうだよ
周波数変調で音から作るのが普通だった >>354
今は何らかのライブラリを使う感じですか?
javascriptで元から作れるのでしょうか
もちろん私には作れませんけど >>352
>中にどんな音も出せるおじさんでも入ってんのかと
それ欲しいwww
久々に涙出るほどわろたわー Linux なら、Audacity
JavaScript のゲームエンジンなら、Pixi.js を使った、Phaser とか sharepointの開発で以下のコードがあったんですが、わかる人いますか?
javascript: _spResetFormOnSubmitCalledFlag Web Audio APIで出来るよ
たしかサイン波の周波数を指定して矩形波とかノコギリ波とか出せる
ずいぶん昔に遊んだだけだから何も覚えてないけど難しい部分はお前が作るわけじゃないから何も難しくないよ 昔このスレに常駐してたカオス理論使いの変態が色々作ってたな
オーディオ合成とかもやってたはず ttps://img.atwikiimg.com/www42.atwiki.jp/syugyou/attach/250/1047/ot3.html
難しい部分をお前が作った系 どんな音でも出せるおじさん
というとポリスアカデミーを思い出すよね・・・ >>355
以前このスレに
JSで波形作って音出すコードをアップしてる人がいたなあ
当時保存したはずだけど、どこにしまっただろう… 人力でサイン派重ねるだけだとファミコンのショボい効果音くらいしか出きないぞ
スーファミの時代でもサンプリングが基本だし npmを管理できるguiツール便利
https://720kb.github.io/ndm/
いつも不思議なんだが他のプログラミング言語とかで、こういうguiツールがないのは、なんでなんやろう >>369
めんどくさくね?GUI
ずっとコード書いてるわけだし
あんまりキーボードから手を離したくない的な npmの使われ的にあちらこちらでモジュール落としてきて
あちらこちらでバージョン管理しないといけないから
ちゃんとそこらへんも細かくサポートしてくれる作り込みがないと
逆に使いにくいからでしょ Some Useful JavaScript Libraries | JS Devolpers | PapaDotCom
https://www.youtube.com/watch?v=Rbv6a1OIXYE
2020/05/22
Howler.js : Audio
Three.js : 3D
Pixi.js : 2D
Chart.js : 様々なグラフ
Anime.js : Anime >>371
ちょっとコード書きたいときには便利かなぁ〜
web系のguiツールだと、XAMPP、Prepros等々
>>372
いや、このツール自体はバージョン変更とかも管理できるよ >>375
そういうことを言ってるんじゃない
返信するならレスの一部ではなくて全部を読んで
考えてからにしてほしい 375じゃないが、あちらこちらでバージョン管理、ちゃんとそこらへんも、なんて抽象的な書き方で正確に伝わると考えてるほうがすごいと思うわ。
固有名詞出てこなくなった中年のこそあどじじいじゃんw そもそも正確に伝わると思ってない
分かる人だけ分かればいいと思ってる
どちらにしろ分からなのに分かった体で返信するのはおかしいでしょと言ってる
なら質問するなり考えるなりすればいいでしょ 能無しに対していくら合理的に要約して提供しても、文章から推測して不足分を想像したりして補う能力が無いため誤読するわ行間を読み取れない
誤解の無いよう正確な長文を用意されても結局、読まないし読めないし理解できない
このような人間には質問権や回答権は存在しないものと思え
ただし、これは提供側が間違いの無い文章を書いているという前提条件が必須である 人に伝わらない文章なら最初から書く必要無し
正確な文章が長文とは限らない
こそあどジジイが文盲を笑うのは目くそ鼻くそ まーたマウンティング始まった
どうせ片方の相手はこの前やりあってたバカだろ 無能「>>386が何言ってるのか分からない」
無能「>>386が無能」 質問が理解できないということについて、書き手が悪いのか聞き手が悪いのかではなく、
伝わらない時点で書き手はさらなる努力か諦めるべきだし、聞き手は真摯に情報を洗い出すかスルーする努力をすべき
無能はこれが分かってない >>390
質問者と回答者だと、回答者が偉いって理解してる?
格下が格上にへりくだるのは当たり前のこと >>391
君の言うとおり格下が格上にへりくだるべきという条件を認めたとしても、
努力をすべき>>390の内容に掠りもしてないので君は無能 わからないのは質問者が悪いし、
回答はどんなものでもありがたく受け取れ
回答にケチをつけるな >>395
条件後出しされたらムカつくだろ
そういう話だ 質問者出汁にしてニートが言い争うニートのためのストレス発散用スレッド 質問が理解できないって言っとけば質問者が悪いのでマウントを取れる仕組みのスレです そういう話じゃねーよ。せっかく回答してやってるのに
後出しでvueを使わない方法でって言われたらムカつくだろうが 画面越しの数十文字にどんだけ人生かけてるんだか
別に自分が好きなように回答したのだから堂々としとけばよかろう
ネット上の赤の他人に何を期待してるんだか そう思うなら、ネット上の他人のコメントにも期待しなければいいのに、反応するところが自己矛盾 375までのやりとりで376-377が火を付けたように見えるんだが
どこからvueを使わない方法という話でムカつかれたのか理解できませんけど
比較的マジレス 俺は回答者なら回答者らしく堂々と自己満足しとけばと言ってるだけで
あらゆる人はあらゆる他人の発言をコメントを気にするなとは言っていない
それを言い出すとそもそも関わるな、回答するなという論調になるだろう
そして100歩譲っても「自己矛盾」はしていない
相手に対してこうした方がいいよと言っていることを
必ずしも言ってる本人ができないとおかしいとは俺は思わないし
俺はそんな立派な人間ではないしなろうともなれるとも思っていない
そういうのは「自己矛盾」ではなく、「お前もな」という
そういうのは、むしろ自分が親しいところにいるからこその発言なのである
期待と言っても色々ある
相手が思うどおりに動かないことに腹をたてるのは
自分がコントロール欲求の強い人間なのかもしれない
そういう考えが自分と周りの人の幸せのために必要 >>403
そこまで自分勝手で説得力の欠片もない理屈を並べ立てられる人は珍しい はいはい
また長文でスレ違いの書き込みするのはやめましょうねー >>403
長文はいいけど、コントロール欲求が強いなら、他人にあなたの意見を納得させるぐらいのことをしなよ
> そういうのは、むしろ自分が親しいところにいるからこその発言なのである
我が儘な孫ほど可愛い理論が、赤の他人にも適用出来ると思ってる?
・荒らしが「荒らすな」と怒る
・横柄な質問者が「親切に対応して下さい」とクレームを入れる
全部、親しみを持てるんだ? >>403
> 相手が思うどおりに動かないことに腹をたてるのは
> 自分がコントロール欲求の強い人間なのかもしれない
> そういう考えが自分と周りの人の幸せのために必要
他人が幸せになるロジックが分からん
誰か翻訳を頼む >>408
だからさ、>>403でも書いたけど人の話を拡大解釈するのはやめようよ
俺は別にコントロール欲求強いぞとアピールしていません
どんなアピールやねんw
>>401に100歩譲ってどうせ突っ込むならこういう方向性でしょ?っていう一般論を述べただけ
我儘な孫がどうこうも言っていない
他人に対して口癖の様に何かを注意する人って
過去その人が言われたり、本人が執着してるっぽいよねー
っていう一般論を語ったんだよ
要するに変なボケ突っ込みっぽいのが来たからツッコミ返しただけよ
おわかり? vueを使わない話でムカついたってのを説明してくれるんですね 親しみ云々は俺も分からん
>>400に「お前もな」で、親しみなんか感じないんだが? "○×"[2>1|0]
で、出力 ○ になるんですが
これの意味がわからないのです
何と言う計算方法なのかが分からないので検索もできません
どなたかご教授いただけると助かります 2>1がtrueなので、添字は[true|0]=[1]になり、
"○×"[1] = "×"になる。
○になるのは気のせい >>415
ありがとうございます
マルバツではなくバツマルでした
中身を比較計算するのですね助かりました ちなみに、「x|0」みたいな計算は、
整数でないかも知れない x を何でも、半ばムリヤリ整数化するのによく使われるイディオム。
true は 1 になるし、文字列 "123" は 123 になるし、nullや "hoge" は 0 になる。
何の解説も無く使いまくるのは、いい習慣ではない気もするけど。。。
演算子「|」は、内部的には「ToInt32()」という操作をして32bit整数化せよ、と仕様で決まってる。
↓は古い仕様だけど、今でも本質は同じ。
ttp://www.ecma-international.org/ecma-262/5.1/#sec-11.10
# ・・と自分は理解してるけど、合ってるのかしら? intに自動キャストされてるけどtrue|0ってちょっとなあって感じ
三項演算子のほうがいいんじゃない長くなるけど
ていうかテクとしては面白いけどそこまでコード短くしようとしないほうがいいよ
可読性最悪だし業務じゃ殴られる 可読性もそうだけど、32bitで丸められるし、算術演算子で整数化するのが妥当だと思うな 本当に整数にしたいときは|0でいいけど
数値化したいときは単項演算子の+を使おう
hoge = +input.value
>>417
落ち着いて考えたら分かるけど、
32bit化されるのは数値のみ
数値でないものは一旦数値として評価されてからの話になる
そういう点では他の算術演算子と同じなので、
数値化したいというときは単行+演算子を使おう window.loadイベントのevent.targetがDocumentを示すのは何故なのか。
「event.targetはイベントを起こしたやつ」と認識していたが違うのかね?
document.loadは動かんし(動かんのも謎だが)、window.loadのeventPhaseは2だし。 仮に英語苦手な日本人が命名していたとして も、イベントを起こしたやつをtargetなんて名前にはしないだろ。 シンボルって使うことあるんですか?
イマイチ使い道が分からなかったのですが >>426
const obj = {};
const key1 = 'isono';
const val1 = 'namihei';
obj[key1] = val1;
const key2 = 'isono';
const val2 = 'katsuo';
obj[key2] = val2;
console.log(obj[key1]); // katsuo
console.log(obj[key2]); // katsuo
これはkey1とkey2が同じだから当たり前
const key3 = Symbol('fuguta');
const val3 = 'masuo';
obj[key3] = val3;
const key4 = Symbol('fuguta');
const val4 = 'tarao';
obj[key4] = val4;
console.log(obj[key3]); // masuo
console.log(obj[key4]); // tarao
シンボルは引数がなんであろうと同一にならないからこうなる 使わない理由がない?
なら普段歩くときに必要もないのに杖を付くのか?
明確に使う必要性が無いものは使わない
それが普通の考え
その逆の思考だとゴミ屋敷になる >>432
あほか。メリットがあるからに決まってるだろ。ちょっとは勉強しな >>432は回答を引き出すための前振りだろ
関わっちゃダメ constを使わないということは変数の中身が書き変わっているのか意識しなくてはならない
再代入が必要になる変数にのみletを使う
これこそ正に"明確な必要性に応じて"使っているじゃないか
varやletなんてのは杖をつくどころか砂利道を裸足で歩いているようなもんだ
そして後からそのコードを読むものにもその道を裸足で歩くことを強要しているのだ function sendRequest(data) {
const request = new Request("/custom/execute", {
method: "POST",
body: data
});
fetch(request)
.then(function(response) {
if(response.ok) return response.arrayBuffer();
})
.then(function(body) {
const decoder = new TextDecoder("Shift_JIS");
const result = decoder.decode(body);
})
}
非同期とかわけわからんのだけどresultをreturnとか呼び出し元に返すにはどうすりゃいいの? >>438
通信って少なからず時間がかかるわけじゃん?
そんでそれがいつまでかかるのかもわからん
その時間を待たずに次にの処理実行しちゃうぜ
ってのが非同期
んでそのsendRequest関数をasyncにして
fetchをawaitにすれば、プロミスを返す関数になるから
呼び出し元でもthenとcatchが使えるようになる >>435
馬鹿も休み休み言え
お前は普段ArrayやDateも変更されてるかもしれないと心配してるのか?
オブジェクトも各プロパティ毎に書き込み禁止や編集禁止を設定してるのか?
型チェックは?
お前とイタズラ坊主が同じページで動作するライブラリを作っている状態で
どうしてもお前が変更されたくないグローバル変数を置きたいというのであればconstを使う意味はある
でもletでも2重宣言は防げるのだから、そうでない場面で使うのは過剰だろ
お前は
const HENNKOUSURUNA = 42
HENNKOUSURUNA = -1
のようなコードを書かないという程度の自信もないのか?
それだったらお前が色々JSで気をつけてる行為そのものの正確性が不安だろう
最初から事前チェックをしっかりしてくれる言語で書いて変換したほうが100倍良い
JSはそういう言語ではないから
JSは制限したりチェックしたりするのではなく、
合わせたり乗り越えたりして恒常性を維持していきやすい言語だから >>440
> お前は普段ArrayやDateも変更されてるかもしれないと心配してるのか?
ArrayやDateは変更されることはないだろうなってわかるから心配してない
もし変更していたら、変更するほうが悪いと言える。
しかし任意で作った変数はそうはいかない。変更しないかもしれないし
変更するかもしれない。保証がない。だからconstで明確にする必要がある。
同じ変数でもundefinedは変更するほうが悪いに属する変数だから
わざわざconstにする必要はない。 >>440
できるできないではない。
コードに意図を書くことが重要。
別にconstではなくてもコメントで「この変数は再代入しない」と書いても良い
意図を書くという目的は達成できている。
ただし言語にconstという機能があるのだからそれを使ったほうが簡単
> どうしてもお前が変更されたくないグローバル変数を置きたい
つまり「変更されたくないグローバル変数を起きたい」のではない
「このグローバル変数は変更しないという設計である」という意図を込めるために使う
今ではletを使うということは「変更する事がある」という意図を込めることになっている。
変更することがあるという意図が込められてるのに、変更していない。なんでや?(バグか?)ということになる。 あきらかに定数でないものにconst使うのってどうなの >>443
全く問題ないですわよ
多分ほかの言語のdefineとかを想定してると思いますわよが
それは Object.defineProperty() のおしごとですわ まああれですよ
今まで20年以上varで問題なかったのになんで今頃?
っていうのが人情ですよ
うちの親会社のアメリカ人も似たようなこと言ってる
本当に上書き保護が必要なら
8年前からTypeScriptで書いてるだろうと >>446
どんな言語も最初から完全な形でリリースされているわけではない
今までアセンブラで頑張っていたのに、なんでC言語?というようなもんだろ
constの方が良いから使うだけの話だろ > うちの親会社のアメリカ人も似たようなこと言ってる
それは「うちの未熟な新人も似たようなことを言ってる」となにか違う意味でもあるのか? 何事にも、変化に対応できない人間がいつも新しいものに文句を付ける
それだけのことさ
constなんて概念自体クッソ古いけど、これにすら文句付けるってどんだけ脳味噌固いんだか >>442
それは違うと思う
変数を見てそれがどんな宣言状態なのか分からないし
だからこそ定数であるという意図を込めるために、
元々定数があった言語でさえも定数は大文字と言ったような慣習があるんでしょ?
変数に意図を込める方法は変数名に込めるしかないでしょ
それとも変数を見るたびにわざわざ宣言部分を探してそこから意図を汲み取ろうとするのか?
あるいはletで宣言されている変数を見つけたら、その後全ての使われ方を見て
変更されてなかったらおかしいという謎の遊びをするのか?
何も問題が起きてるわけでないのにわざわざ?
結局君がconstに拘ってるのは君が変態でへんくうだからでしょ? > 変数を見てそれがどんな宣言状態なのか分からないし
constって書いてあるからわかるじゃん? > 変数に意図を込める方法は変数名に込めるしかないでしょ
iCountとかいう名前にしろってこと?
懐かしのハンガリアンw > それとも変数を見るたびにわざわざ宣言部分を探してそこから意図を汲み取ろうとするのか?
え?短期記憶もできないの?
関数は一画面に収まるほど短いんだから
宣言部分なんて上の方見ればわかるじゃん
それに上でまとめて宣言なんてこともしてはだめ
使うところの近くで宣言されてる > 変更されてなかったらおかしいという謎の遊びをするのか?
コードを見て変更されてないのに、なんでletを使ってるんだろう?
という疑問を解決する必要がある
遊びではない。仕事だ。 >>448
日本だけじゃないんだなあ
って思ったから >>456
世界中のどこでもアホはいる。当たり前だよw 大文字にした上でconstもつければいいじゃない。
値が書き変わらない変数は、単にconstをつければいい。
読みやすい上に開発環境からの恩恵も受けられる。 constみたいなわかりやすい話題はどの言語でも食いつきがいいな IE で常用対数を使いたいのだけれども どうしたらよいのかしら・・・ >>460
Math.log(x) * Math.LOG10E 中学生の頃だったかC++でクラスとかライブラリを知った時
privateにしてもヘッダファイル読み込まなきゃ使えないじゃない?
ヘッダファイル読み込んだら、そこのprivateって書いてあるじゃない?
そのヘッダファイルのprivateをpublicにすればアクセスできるじゃない?
何も隠蔽できてないじゃない?って思ったことがあるんだよな
どうしてそう思ったかと言うと、当時はライブラリは
クローズドソースにして、他の人に使わせるものだと考えていたから
privateの隠蔽というのは、秘匿という意味だと思っちゃったんだよね
まあその勘違いはすぐに分かって、ああ秘匿するためじゃなくて
外から直接参照することは想定してないという意味なんだなって
なんでこの話をしたのかと言うと、これな
>>446
> 本当に上書き保護が必要なら
> 8年前からTypeScriptで書いてるだろうと
constは本当に上書き保護をしたいんじゃなくて
上書きしませんよという宣言だという話
後からコードを見た人のための説明なんだってこと
大文字は、上書きしない+グローバルに使うものという意味だから
大文字にするのは良くない 他人からこれだけ不自然だって批判されてるのに
後からコードを見た人の為になる!って主張できる根性は尊敬する 変態の拘りにはついて行けん
JS界は自由が特長だからマニアックなのは結構だが
口を開いて出てくる言葉が屁理屈ばっかりなのは呆れるな
それならまだ僕の拘りです
こっちの方が芸術的に感じるんです
と素直に主張する方が好感持たれるのにな
変態でプライドも高い奴はどうしょうもない 今使ってるコード中で再度変わらることがないからconstなのではないだろう
それがどういう値が考えたときにmutableな属性ならばletにすべき ECMAScript2015には従えない!
と言う人が居るスレはここですか? const/letを仕様に入れなければこんな論争は起きなかったんだよ
マウントの取り合いしてても見苦しいだけじゃん
JavaScript程度のプログラムなら変数の宣言はvarだけで十分 >>463
> 他人からこれだけ不自然だって批判されてるのに
その「他人」の多くは初心者でしょ? いえ、技術力が高いという意味で有名な人が
不自然とかconst使うなって言っているなら別ですよ?
そんな人いますか?いませんよね?
技術力が高い人はconstを使いましょうって言ってるはずです。 >>465
> 今使ってるコード中で再度変わらることがないからconstなのではないだろう
そうだよ。この変数は一旦割り当てたら変えないようにしよう。だからconstにする。
こういう考えでコードを書くんだよ。
自分で新規のコード書いたことないの? >>464
変数の再代入は避けるべきという
言語に依存しないベストプラクティスが存在するんだよ
芸術の話じゃなくてベストプラクティス
その実現方法がJavaScriptではconstというだけの話 >>467
> JavaScript程度のプログラムなら変数の宣言はvarだけで十分
何にも分かってない素人ワロタ let isono_height = 1.65;
const fujisan_height = 3776;
重力や地殻変動や工事などの外的要因を除去する。
磯野は有機生命体でdynamic、富士山は無機質でstatic。 >>471
お前は天才だ!
もっと詳しく教えてくれ! >>473
☓ const fujisan_height = 3776;
○ const fujisan_height = 3775; >>472
テストとかではvarが基本
Chromeのテストでも好まれてる
テストだと一時変数が多いから
それらの名前はどうしてもかぶりがち
だから何か機能を関数として用意するときは
その関数内では基本letが使われるけど
それ以外の場所では多重宣言が許されるvarが好まれてる
でもテストを色々見てると基本constで書かれたものもある
だけどそこにも上の理由でvarも沢山使われてる
つまりvar/constだけで書くのが好きな人もいる
面白いことに関数内だったとしても
letを中心で使う場合とconstを中心で使う場合でかき分けてる人もいる
つまりは、数行の単純な結果や演算を担当する関数は、
カチッカチッとしたパーツを組み合わせて個体のマシンを作る感覚でconstが好まれる
一方もうちょっと柔らかいイメージの機能としての関数内ではletが好まれる
上から一行一行さーっと実行していくような場面ではvarが好まれる
全体的にそういう傾向があるように感じる
同じ感覚でもここで争われてるような感覚とは違うっぽい コンピュータ上で実行されている以上、変数内の値(メモリ上の信号)を書き換えようと思ったら、そんなことは実行中でもいくらでもできる。
既に沢山書かれているが、constというのは、「どういう手段を以ってしても値が絶対に書き換えられない」という不変性を約束するものではなく、開発(プログラミング)において、「この値を書き換える予定もなければ、その必要もない」という表明の形に他ならない。
短いコードならともかく、大規模な何百、何千行以上もあるようなコードの中に、唐突にvarやletの再代入可能な変数が広いスコープの中に現れたとき、それの値が変わることは意識せざるを得なくなる。
そういう(必要ないかもしれない無駄な)気苦労を減らすというだけでもconstの価値は大きい。 >>477
好みの問題なら「好きなように書け」で終わ他人を真似したいなら「尊敬する人を真似ろ」で終わり
そこに明確な論理はないが、あなたの中では、そういうことだろう forEachの第3引数に操作中の配列が入ってくるけど、使い道どんなんあんの? >既に沢山書かれているが、constというのは、「どういう手段を以ってしても値が絶対に書き換えられない」という不変性を約束するものではなく、
>開発(プログラミング)において、「この値を書き換える予定もなければ、その必要もない」という表明の形に他ならない。
誰が決めたんだ? >>477
> テストとかではvarが基本
それは誰が言ってますか?
あなたの思い込みですか? 不変性を約束するものではない
表明の形にほかならない
誰が決めたんだ? >>481
入ってこねー
リファレンスを100回読め const程度でグダグダ言ってるレベルのスレだし残当 >>485
誰も決めたなんて言ってないけど、
何の話をしてるの? >>490
良くある言い回しなのに、意味が分からない人もいるんだな さもそれが真実であるかのように書いといて何だねそれは ドラッグイベントが理解できん。
dragenterイベントでdropEffectを設定してもdragoverイベントで勝手に値が変わる。
dragenterイベントでdropEffectを設定する意味は?
dragenterイベントでpreventDefault()しなくてもdragoverイベントはめちゃめちゃ呼ばれるし、
dragoverイベントでpreventDefault()しさえすればdropイベントは発生する。
dragenterイベントでpreventDefault()する意味は?
dropイベントでdropEffectに応じて処理を分岐できるとあるが、
dropイベント内でのdropEffectが何やってもnoneにしかならんのだが?
そもそもdragoverイベントで延々とdropEffect書き込んでpreventDefault()し続けるってどうなの?
このAPI設計した外人馬鹿じゃねーの? >>483
一流の人に学ぼうということで
chrome(V8)のテストを色々見てみた結果だよ jQuery使おうが同じやろがい
それどころかe.originalEventとかいうダセぇステップを踏まなきゃならん
jQueryerはほんまレベルひっくいな >>499
> chrome(V8)のテストを色々見てみた結果だよ
それじゃあ全く役に立たないですねw >>496
そういう時は考え方を変えるんだ
自分がこんが得ている使い方以外のこととかね >>501
別に万人に役に立つとは言ってないよ
そんな主張そもそも不可能だし
時間の無駄だから
いちいち食って掛かってこなくていいよ >>496
>>477が一般論で書いてるようにしか見えないから、根拠を分かりやすく書く努力をした方がいいよ × テストとかではvarが基本
Chromeのテストでも好まれてる
○Chromeのテスト(?)では(何かしらの意味があって)varが使われていた
それを見てvarが基本だと思い込んだ constかvarかなんて
再代入した時に実行環境がエラー投げるかどうかの違いしかないんだから
どっちで書いたって大差ねえよ
そんなことみんなわかってるじゃろ?
なんでこんな無駄な言い合いを… >>509
まじで!
じゃあ質問します
違いを教えて! 少なくとも
> 再代入した時に実行環境がエラー投げるかどうかの違いしかないんだから
> どっちで書いたって大差ねえよ
エラーになるんだから大差あるだろ
分かってたらこんな自己矛盾するような文章は書かん
constとvarの使い道が違うのに大差ないと言い切っちゃうところが分かってない >>511
どゆこと?
別にvarでも再代入しなければいいだけじゃん
ESでconstが使えるようになるまで
再代入されては困る変数はどうしていたの? そもそも上で議論してるのはconstとvarじゃなくてletとvarの使い分けじゃないの? defineみたいなものすらないクソ言語にようやくconstが実装されただけのこと
constがない時代に慣らされた低脳コーダがconstの意味を理解できてないだけで騒いでる図
ちょっとは他言語に触れた方がいい >>514
PHPなんかは
defineやめてconstになったじゃん?
defineはレガシーになっていくんじゃね? >>507
そこが気になってたの?
(あらゆる) テストとかではvarが基本
ってことではないことは先を見れば分かるでしょ?
(V8のような環境での)テストとかではvarが基本(好まれる)
っていう雰囲気の話だよ 徹底してconst使うのならObject.freezeも使わないとおかしい >>515
そうだよ
それすら分かってないやつがvarでいいって固執してた訳で、分かってねえなと言われてた >>514
javascriptにはdefineはあるよ let, constはブロックスコープが使えることも忘れないように。 >>517
それならもう一個あったじゃん
なんだっけ
Object.sなんたら >>515
やめてない
constを手続き型でも使えるようにしたってだけ
defineにはconstにはない役割があるので完全に置き換えられるものではない >>512
> 別にvarでも再代入しなければいいだけじゃん
バグで間違って再代入してしまった場合は? >>512
> ESでconstが使えるようになるまで
> 再代入されては困る変数はどうしていたの?
再代入されて困る変数に再代入してバグが発生していた
ESでconstが使えるようになるまでバグが発生していた >>512
そうだね
ES3を使い続ければいいと思うよ
最新機能は使うだけ無駄だね 別にvarもletもconstも使えばいいが
constにこだわるメリットが無いわな
何度も言われてるようにそこまで気にするなら
別の箇所も気にしないとおかしいし
それなら別言語を使うほうが生産的だ
結局の所自己満足以外の何物でもない
それを一般的に素晴らしいと盲信するのは迷惑 constなくて困らないから、永遠に使わなくていいよ
誰も強制してないから そこまで気にするんじゃなくて、どれも変わらんとか全てvarでいいとか言い出すから馬鹿にしてるんやで 「使い分けすればいい」なら、誰も反論しなかっただろうね
>>526で意見変えてるようだけど jqueryおじさんやconstおじさんってめんどくせーな 昔は困らなかった云々いうなら、「ES6がなかった時代のコード」を書き続ければいい
今でも書けなくはないが、わざわざ不便な時代に逆戻りするとは酔狂な人だな、と思う 1. 使い分ければいい
2. const房
3. constなくても困らない(昔は困らなかった)
1は正論。
3はフルボッコ状態。 昔は困らなかった
今は全部const使わなければ困るのか?
いや困らない
話は終わり >>533
1.可能な限り100%const
2.それはおかしい
だろ
すり寄ってくるんじゃねーよ
使い分ければいいと意見を変えたならそう言え
お前が折れたならそれでこの話は終わりだ
勝手に違う対立構造を作って逃げようとしてんじゃねーよ 昔から困ってる人が居たからletだのconstだのtypescriptだのが出来たんだろw
困ってないやつは今後もES3で書き続ければ良い
世の中に必要とする輩は居るんだからそれらに一々イチャモン付けずにお前はお前の道を突き進んでりゃ良いだけ
ここで新しい機能に使ってる奴に文句言っても新しい機能は無くならないから言うならEcma Internationalに文句付けてくれw >>535
誰と勘違いしてるのか知らんが、俺は意見を変えたことはない
>>533の3は>>512
最も、彼は日本語が不自由な輩かもしれんが >>535
お前、「俺に反論する奴は全員『可能な限り100%const』」と思いこんでるだろ >>526
別にvarもletもconstも使えばいいが
コードの品質は気にしないし、バグが混入する確率が上がって
保守が大変になっても、その時頑張ればいいから
constにこだわるメリットが無いわな
こうですか? 気持ちはわかるが
varだけではバグ率上がるような人はちょっと困るな 世の中にはconstで楽ができると考える人とconstで書くのが負担に感じる人がいる。 >>543
ググったらわかるよ。constが楽〜とか言ってる人は
関数型とか再代入とか参照透過性とかそういう用語を知っている。
constを理解してない人は、知った上で否定してるわけじゃない。
これらの用語すら知らないんだよ。 プログラミングって明らかに理解力が大事だろ
完成して動きゃいいんだよ 中身なんてかんけーねーよ
って馬鹿丸出しだろ >>547
つまり
負担になるかならないかの話をしていたのに
理解をしているかいないかの話であると理解した
ってこと?
理解力が大事なのは同意します 緩いのが売りのJavaScriptで
なぜconstができたかを考えるべき >>548
理解している人は負担にならないんだよ
例えば囲碁でもちゃんと理解してる人は死活(石が死んでるか生きてるか)を
をすぐに見極め、ちゃっちゃと寄せ(陣地の境界線をはっきりさせること)を終わらせてしまう
理解してない人は明らかにわかりきったことでも悩むから負担に感じる >>551
ほんとぉ?
理解してるけど
2文字ぶん、指の筋力の負担だなって思ってる人は
一人もいないことは確認済み? 理解してない奴のコードはスパゲッティなんだよ
自分で作って自分しか使わないならそれでいいが、人に使わせ保守も引き継ぐなら
理解力がある奴が組んだ綺麗で保守性のあるコードが理想って事言わなくても分かるでしょ 考え方が大きく間違ってる
アホでも担当が分かれててコントリビュータがついていれば
保守性のあるコードになる
理解力があっても一人が長大なコードを独断で書いてれば
特に自由な書き方ができて標準も定まっていないJSでは
他人がそれをメンテするのは困難
引き継げるかどうかは書いている人の能力ではなくて
引き継ぐための組織的な環境整備がされているかどうかだ
そこがわからないやつは無能 だからconstなんて使わなくていいしvarで十分
とはならんだろ
原則論と組織論をごっちゃにして無能をさらけ出しちゃった例だな 1. プロは道具に拘る
2. プロは道具を選ばない
例えるなら、
1. ゴルゴ13は仕事前に、その仕事に特別に調整された武器を使う
2. ゴルゴ13は最強なので、どんな武器を持たせても必ず、勝利する
俺は1.か正しいと思うのだが
武芸百般でも、最後の最後まで完成度を高めるのが、本当のプロ ESにconstが追加された事実の前にはどんな戯言も無意味
反論してみろ >>556
例えは妥当だけど、当事者の読解力が不足して伝わらないだろうなあ だからconstなんて使わなくていいしvarで十分
と仮に言ってたとしても
constは使わないほうが良いとか使っちゃ駄目だとか言ってるわけでもないのに
やっぱり先天的にこだわりが強いやつには日本語通じないな >>558
確かに斜め上の反論をされてるので、伝わらなかったようだな >>559
お前のようにvarが体に染み付いてるわけじゃないから
constを使うか、varを使うかは、適切な方を使うだけなんだよ
constを使うのに苦痛(?)などない。
constで十分 >>556
火縄銃での依頼があったよ
当然アホみたいに入念な準備をしていた constは乱用するのにオブジェクトや型に対しての縛りには無関心なんだな 乱用って何だよ
理解できないものは乱用と受け取るレベルの低脳は話に入ってくるなよ 自分の悪癖が他人からどう見られてるか客観的に考えたほうがいいぞ
人の意見を聞く気がないのなら部屋の隅っこで一人で話しとけ >>565
多分、>>535と同じ人なのたと思う
上から眺めてみたけど、「可能な限り100%const」な人はいなかったし、>>559の「constは使わないほうが良いとか使っちゃ駄目」に反論してる人もいなかった
見えない敵と戦ってるようなので、ほっといてあげて 俺は普通に100%constもできるけど、
全員に100%は押し付けないよ
技術力不足でできんやつもいるのは知ってるから。
完璧主義ではないので、他人には8割程度しか求めないな constに技術力ってなんだよ
使うべきところで使うだけのことだろ 知らんがなw
100%constできないやつがいるんだろ?
技術力がない以外の理由なんかあるんか? 技術以前に理解力だろ
forなんて知らない子
自分でカウントアップしてifで終了判定してgotoでループで十分
て話とここで話をしているconst,varの低レベル議論と同じじゃね const使うとめっちゃ便利だよね
うっかり代入してるところでIDEがちゃんと叱ってくれるし助かる
IEの仕事とか保守案件が多いとconstを使いたくて使いたくて震える 再代入防ぐぅぅぅ便利ぃぃぃぃぃと散々言うてるが
そんなうっかり再代入するものか?
どんな書き方してんのよ
それはそれとしてconst使う方がエンジンで最適化されてパフォーマンスが極僅かに良くなるんだっけ?
じゃあconstでいいんでない? だって馬鹿はうっかり代入してることすら気付かないもの javascriptでこのような木を描くことは可能ですか?
javascriptとcanvasです
本当は3d環境で作りたいのですがね
https://qiita.com/v_ohji/items/628a972a3f138cc09427 >>574
>そんなうっかり再代入するものか?
しないの?
俺はうっかりだからすげーうっかり再代入しちゃうけど
普通の人はどういううっかりが多いの? コード見て、あー、この結果に値加えれば
バグ修正できるわーとかいって
どんどん壊していくってのが多いよ >>579
Processing.jsでも使えばいいんじゃね >>582
js版あるんですね
生jsでは無理な感じですか Processing.jsやp5.jsはJSで実装されてるんだから、別に不可能ではないだろ
キミに可能かどうかは知らんけど、ライブラリなしでやりたいなら頑張ってやればいいじゃん すまん、playcodeで動くとこまで作ったんだけど
数値いじって遊んでたらメモリ不足で吹っ飛んだわ
そのままintやfloatの宣言をletに変えて関数はfunctionにする
あとはcanvasのコンテキストとラッパー関数や変数10個くらい用意すれば動いた
注意点
元のコードに2箇所誤字がある triangle → tr_angle
このコードそのままでは例の絵みたいな綺麗な林は描けない
ただ逆さ箒が1本描けるだけ
step増やすと指数関数的にメモリを食い落ちる 用意する関数の中身は、ある程度想像が付くだろうけど、
http://processingjs.org/reference/
ここを見たら分かるよ
全部1行や数行程度で実装できる >>580
テストすれば良いんでね?
そもそも
再代入されてはならない変数に再代入が行われたら
期待通りの動作にならんだろ
逆に再代入しはならない変数に再代入が行われても
期待通りに動くなら、そもそも再代入しても良いわけで >>589
そうだろうけど生jsでは無理かってあったから
それChromeで動かんのはなんでや >>590
Processing.jsが生JSでは? >>588
コードの品質問題だから動けばいいというわけじゃない >>556を読むとconstを使うのがプロだということがわかるね 万が一に備えてミスが発生しにくい習慣付けをしようとするかしないかの違い
道具に拘るか道具を選ばないかの話ではない
ゴルゴで言えば極力握手をしない、背後に回り込まれない位置に立つ、寝る時も銃をすぐ使える場所に置くといった危険回避のための習慣にあたる >>593
つまり
再代入しても問題ない変数を
再代入してはならないと設定するコードは
品質高いってこと? 基本的に定数として使い計算の基礎として重要な数値となるわけだから、
うっかりミスという馬鹿馬鹿しいミスで計算結果が狂ってしまわないための保険で
ロックをかけた方がいいし、さらにスコープで無関係なところからは見えなくもなる
から再代入のミスを減らせるってのがconst
こういう気遣いができるプログラマーとできないプログラマーの差は言わなくても分かるでしょ >>598
「再代入しても問題ない変数」なんてものが存在してる時点で品質が低い
というかそれを書いてるプログラマーの考え方の品質が低い 再代入可能かどうかでconst letを決めるものじゃない
それがどういう値かで決めるものだ constは定数 letは変数
再代入したくない変数なんて機能がほしければ
mut letを導入すればよかった
しかしJSはそうしなかった
constなんて名前をつけたことがミス >>602
決まったことに対してグダグダ言ってる時点で自分は低脳だって言ってるようなもんだぞ >>598
例えて言うならば、
1000行で書いても問題ないコードを
50行×30個の関数で設計したほうが品質が高いのと一緒
変数を再代入しない設計にすれば品質が高くなる
(逆に品質が高いコードは再代入しないとも言える)
動くかどうかじゃないし、ましてや俺なら1000行のコードでも
バグなく書くことができる。俺はすごい!とかいう話ではない >>601
> それがどういう値かで決めるものだ
let total = 0; // 合計じゃないじゃん(笑)
こういう話? >>600
指す語にそれは無理があるようなw
どうしても反論したい気持ちはわかるが JSのconstの認識に誤謬がある気がするんだよな
JSのconstを他言語の定数と錯覚するとモヤモヤする
そういう人は for (const x of y) も気持ち悪く感じるのでは? >>607
「再代入しても問題ない変数」と「再代入すると問題ある変数」という区別自体が不味いの理解できないの? 「再代入しても問題ない変数と、再代入すると問題ある変数がある場合にどう変数を宣言しますか?」
って次から面接で聞くことにするわ >>601
const派の俺でもそれは賛同できないぜ varで十分派の人へ
「varのメリット」はいつになったら、出てくるの?
「constのメリット」しか出てなくて、varを選ぶ理由がないのだけど 冗談はさておき
数値をインクリメント、デクリメントしたり
文字列を足したり引いたりとかあるから
再代入をする必要がないってのは
流石にちょっと乱暴にすぎるんでないかい? immutableな変数がconstじゃねえんだよ
constは定数ってMDNにも書いてるだろ
違いのわからんアホどもは一回rustでも学習してこい 言語によってキーワードの意味はそれぞれだ。rustがこうだからとかまったく賛同できないね >>616
再代入可ならletが比較対象だよね
varのメリットは? 賛同云々じゃなくてJavaScriptにそんな都合のいいものはまだ実装されてない
immutableな変数と勘違いして使ってるだけだろ
>>428のコードなんてアホとしか言いようがないわ
定数なんてこんな当たり前に出てくるものじゃない >>617
>constは定数ってMDNにも書いてるだろ
MDNの日本語訳はconstantsを定数と訳してるだけ
じゃJavaScriptにおける定数の定義は? 何いってんだよ?定数の定義ってw定数は定数だろ
日本語?英語版にも定数constantって書いてるだろ
let(変数)によく似ているが書き換えれないって初心者向けの定数の説明そのもの
static finalな変数が定数とかそんな次元じゃない >>621
他言語で笑われるで
>>623
変数の話やぞ 定数ってのは例えば
円周率が3.14とか太陽系の惑星数が7とかそんなのだろう
円周率を3で教えようとかぬるい提案出てきたり
前は冥王星も入ってたから惑星数は8から7に変わったけど
定義が変わって値が変更されることはあり得るがそれらは変数ってわけじゃない consut不要varでいいって別に好きにすりゃいいけどさ、ちょっと聞くけどこういう人って定数どうしてんの?
まさか数字直接書いてるの?w JavaScriptにおける定数の定義を知らないからアホみたいなレス量産する
定数という言葉で脳がフリーズしてんね >>619
すまん知らんw
どっちが良いかの戦いは勝手にやっとくれ
俺は自分が書きたいように書くから大丈夫です >JavaScriptにおける定数の定義
なにいってんのおじちゃん? >>630
そうか
varのメリットが出てこないので、「varを採用する理由がない」と結論する事にする 話に関係ないが俺はjavaでも好んでfinalをつけるw immutableの代わりにconstを使うって発想がそもそも間違い
それがJavaScript風の流儀であるとでもいいたげだが
一部の人間が勝手に都合よくそう解釈してるだけで概念が違うので混同すべきものではない
理解した上で使ってるなら好きにしろ どう考えてもimmutableの意図込みで使うものだよ>const >>633
まだ結付けてなかったのかよwww
今まで何をだらだらやってたの?wwwww immutable objectやimmutable data structureと
immutable bindingの違いを理解せず
immutableって言葉をガバガバに使うから無駄レスを量産する >>617
つまり名前が問題なだけでしょ?
constで十分、constを使うべき。には反対してないんだよね? >>632
笑うネタじゃないんだわ
const values = [10, 20, 30];
const total = values.reduce( (sum, value) => sum + value, 0);
みたいな感じで、名前と値が常に一致してるのがconstの特徴 >>638
誰と勘違いしてるのかな?
まとめて読んだので、今までのことは知らない >>624
オブジェクト型のconst変数は再代入禁止というだけで値は変化するから定数じゃないという話だが。 >>537
>>644
で指摘されてる「誰と勘違いして〜」の相手は両方とも同じ人だと思うけど、自分以外が全員同じに見える人みたいなので、関わらない方がいい気がする 647のページにも書いてあるけど、constは初期化が強制されてるのもいいよね。
nullで初期化してない限りヌルポも無いわけだし。そもそもconstの変数は普通はnullで初期化しないし。 const否定派が定数をどう記述してるのか教えてよ >>649
クッソ適当に書くなら、こんな感じじゃないかね
Object.defineProperty(window, "ABC", {
value: 42,
writable: false
});
console.log(ABC); ブラウザ用に書いたけど、window使いたくないなら
var DEFINE=new Object();
とかやって windowの代わりに使って DEFINE.ABC とすると良いわよ pythonのように定数のない言語もあるし、
いじってほしくない変数には全て大文字だとかアンダースコアをうつとか規約で取り扱えば混乱もない。
定数のない言語ではそんなふうに表現するしかないが、値は定数でも性質は変数に過ぎない。
変数は値が変化する、定数は変化しない。
いじってほしくない(いじれない)変数!=定数なのでそこは注意を要する。
変化する、しないというのは、コードの中で変化するかしないかとかそういう話ではなく、
PI=3.14は好例だが、その値が根本的に変化するものか否かで考える。
よく使われる例では、設定でビット値をとるものなんかで定数はよく使われてる。
あとは長すぎるもののshortenとして。 >>652
「const否定派ならこう書くわよ」 というロールなので
constは使わんでよ このスレのconst否定派はそんな記述せず、普通にvarだろ
つーかvarごり押しだったろ
つまり精神論で定数を制御 var hensu = 1;
var TEISU = 1;
TEISU = 2; //大文字で書いてるだろ?いじったお前が悪い var HENSU = 1; // は?俺は変数大文字で記述する宗派なんだよ
var teisu = 1; // 俺の様式に合わせてメンテしろ ミスしたらお前が悪い c#は逆にvarが使えるようになってからvarばかりになった それが定数であってconstあるならおとなしくつかえばいい
ないならあがけ >>658
話の流れからするとconstからvarと言いたいのだろうが、さすがにダウトというかもはやアホすぎてなんともはや >>641
何を持って常に一致と言ってるのかわからんな
let lastStatus = true;
let result = [];
みたいなのでも名前と値が一致してないわけじゃない
命名の問題でconst/let/varの使い分けとは関係ない >>662
> 何を持って常に一致と言ってるのかわからんな
ああ、意味がわからん人がいるのねw
コードを見た時 foo(total) というコードが有りました
さてこのtotal の値は 0 でしょうか?
それとも合計でしょうか?
それとも計算途中の「ここまでの合計」でしょうか?
const使えば、確実に「合計」だってわかるんだよ >>664
例えが致命的に下手過ぎてウケる
これだけじゃ何もわかんねーだろ
この例でゴリ押しするなら
fooという関数名は不適切だし
totalも抽象的すぎるのでもっと説明を足すべき 技術力が低いやつはコードが長い。
長い関数で変数を見つけると、この変数を変更してるのはどこだって探さなくてはいけない。
技術力を上げていくと、より良い書き方をするようになっていく
コードが短くなると同時にconstを使うようになる。
上級者ほどconstを使ってるのはそういう理由 >>665
ああ、じゃあお前のために日本語の変数にしてやると
税率計算(商品価格の合計)
さてこの「商品価格の合計」の値は 0 でしょうか?
それとも「全ての商品価格の合計」でしょうか?
それとも計算途中の「ここまでの商品価格の合計」でしょうか? 結局、const否定派がvarを使う理由は何なの? >>667
たぶん、「全ての」と「ここまでの」はどちらもあり得るのでは?
このあとに非課税対象の商品価格が足されてくこともあり得るし
もちろん合計値が 0 というのは普通にあり得ると思う
constの有無でどうにかなる範疇は超えてるんじゃあないかな > たぶん、「全ての」と「ここまでの」はどちらもあり得るのでは?
だから、constを使わないとどちらもあるから
コードを探して、値を変更してる箇所を探し出す必要があんの
理解できた? >>666
コードが短ければ上級者って
そんなのはただのオナニーコードっていうんだよ >>671
あのさぁ
上級者はコードが短いと言ってるの
コードが短いなら上級者とはいってないの
お前馬鹿だな 同じことを実現する時、
1000行で実現するやつと
10行で実現するやつがいる
上級者はコードが短い
反論ありますか? 時と場合による
なんでもかんでもコードを短くするものじゃない
1000と10とはまた大きく出たな
改行コード抜いてるだけレベルのただのアホじゃん では同じことを実現しているのに、上級者のほうが長い時と場合を言ってください 仕事でコードを書く場合
他人と共同でコードを書く場合
コードを公開する場合
技術力が低いから冗長なコードを書いてるわけじゃない
お前が見てる長ったらしいコードの多くは他人に見せるために公開されてるもんだろ
個人で俺は上級者だ!ってオナニーコード書いてるあわれなやつにはわからんがな >>601,641,664,667,670
流石にアホ
>>601はネタかと思ったらマジだった件 >>670
const使っててもどちらもあり得るんだけど
まあ仮に「全ての」しかありえない架空の世界だとしても
constにすることで名前にコンテキストを与えてるんだから
「名前と値が常に一致してるのがconstの特徴」という主張は破綻してる 定数がもつ性質が再代入不可能であって
再代入不可能なのと定数であることは同一じゃないし
変数に再代入不可能の性質をもたせるためにconstを使うのがおかしい言ってるだけ
ハック的な使い方であって正しい使い方ではない >税率計算(商品価格の合計)
これ見ただけでいろいろわかっちゃうよね >>681
JavaScriptでは正しい使い方なんですけど 正しくないのを理解して使ってる人と
正しいと思い込んで使ってる人の差
このスレは後者の人間が多すぎる 両派キチガイがオレオレ理論を展開しておりますが、
初心者の皆さん、定数はconstをお使いください
単純にそれだけの簡単なお仕事です
簡単なお仕事ができないキチガイの皆さま、引き続きこの低レベルスレをご堪能ください >>681
アホだなぁ
constは再代入不可・再定義不可でブロックスコープを作る”変数”を定義する時に使うキーワード
それ以上でもそれ以下でもない
ちゃんとECMAの標準に書かれてる >>686
>定数はconstをお使いください
定数 == fixed valueの意味で使ってるんだろうけど
数学の定数やC言語の定数とconstは違うぞ >>688
違うとしか言わず、どういう時にどう使うのか解説してこそ有能 >>687
何度言わせるかね
再代入・再定義不可能な変数が定数なんじゃない
定数の説明をするときに再代入・再定義不可能な変数という言葉を
持ち出すことはあるかもしれないがそれは説明としてそういってるだけで
物の理を考えたときに定数であるべきものが定数である 生まれた場所は定数
住所は変数
今月版住所録を作ってるとき
DBから取り出した住所はreadonlyな変数であってほしいが定数ではない プログラマーって人生損してるよな
こんなことで無駄な時間を消費してるわけだ 別にconstでええやろと思っていたが
>>657みたいな糞天邪鬼見させられたらconst派潰したくなるな
なんでこいつはこんな頭の悪さでプログラマ名乗ってんの?
>>676
例外処理がっつり入れてる 初心者は入れねえ
これしきのことも思いつかねぇのか よくその頭の悪さでプログラマ名乗ってんな プログラムの行数がプログラマの技術力の証明やアプリケーションの品質の担保にはならない それよりプログラマーになりたいJD1のカテキョ+ご褒美に命かけたほうがいいじゃん 「const厨」厨はconst警察が目障りなのが嫌なのか
constのメリットが分からないのか、どっち? >>680
> 「名前と値が常に一致してるのがconstの特徴」という主張は破綻してる
破綻してる理由は? >>694
> 例外処理がっつり入れてる 初心者は入れねえ
同じことしてないだろ
条件無視すんなや >>696
派てw
どちらかだと思っているのが既におかしい気が >>702
>>694でconst派といってるのに、そんな反論が来るとは思わなかった >>701
同じことしてるでしょ
例外処理と条件分岐は違う >>691
>物の理を考えたときに定数であるべきものが定数である
「定数」を定義することすらできないのかい? >>647
そこに書いてあるのは呼び出し毎に変化するというだけで値を変更できるというのは別だと思うが。
「内容が変化しない」って冒頭に書いているし。 >>704
> 同じことしてるでしょ
プロは例外処理入れて品質が高いものを作るんだろ?
初心者は品質が低いんだろ?
お前は品質が違うのに、同じものだと思うんか? >>703
ごめん
誰と戦ってるのか知らんけど
それは俺じゃない人だよ >>682
商品価格の合計から税率を計算できると思ってるやつがいるんだな 今日も1日、僕の考えた意見の押し売り大変ご苦労さまでした。
しばし休息をとって明日にそなえましょう!
論破目指すよりも、規則正しい生活がストレスを解消してくれます。
それではみなさまおやすみなさい。 >>709
「const派を唱えている相手(>>694)に合わせて派閥を聞いてる事ぐらいは読み取れ」
と>>702にいってる >>708
お前日本語力ガイジ
同じこと、同じもの
意味が違うの分かる?分からないかw >>713
違いがあるというのなら、その違いを言ってみ >>714
>>676は「同じことを実現している」という前提、つまり、
・初心者も上級者も同じ結果を生むプログラムを実現している
という状況で、
・「上級者の方がコードが長くなるケース」
を聞いている
「初心者も上級者も同じものを作っている」
なんていう条件も無いしそんな話はそもそもしていないの
お前はバカだから、
・結果が同じ = つまり同じもの
になってしまうんだろうけど、>>694や>>704は
・結果や出力が同じでも、初心者と上級者ではそこに至るまでのプロセス(コードの記述)が違う
・よって上級者の方が記述が長くなる場合がある
っていう話をしているわけ
って説明しても日本語ガイジの君は理解できないだろうから消えてくれ > ・初心者も上級者も同じ結果を生むプログラムを実現している
例外が発生するときに同じ結果を生んでいない >>718
例外が発生したときの結果
> 例外=結果
> ではない
お前が強弁しようが根拠もないので何の意味もない 初心者はバグが多いからコードが短い
とか言っても何の意味もないんだよなぁw 馬鹿丸出し
「同じことを(結果で)実現している」っていう前提での話なのに
「例外が発生したら結果が変わる」とか話の根底から覆し始めるあたり相当ヤバい
初心者:処理 => 結果
上級者:処理 => 例外発生 => 例外処理 => 結果
この場合の結果は同じ(ことを実現している)っていう話の前提から理解できないとか馬鹿すぎる
何のための例外処理なのかも理解できていないのかw >>725
話がずれすぎ
上級者のほうがコードが短くなるっていう話
バグが有るコードと無いコードを比べることに価値はない
仕事やったことあるか?
仕事レベルの話で上級者のほうがコードが短くなるって言ってるんだが この頭の悪さで職に就けるのか(笑)
同僚が可哀想なんやな(笑) >>726 >>701
都合が悪くなったからって条件出してまで敗北宣言しなくて良いよ
バグの有無だの仕事レベル()とか曖昧な後出し条件で敗走はクソダサい
今までの流れのどこで「バグが含まれている」なんて条件で話してた?
あと
例外処理=バグの処理
みたいな認識なんだろうけどそれも相当頭悪そうだからやめたほうが良いよ
んで話を元に戻すと
Q.「上級者のコードが長くなる場合がありますか?」
A.「上級者ならば要件を満たすために例外処理等をしっかりと記述するので長くなってしまうことがある」
はい、これに反論は?w 後出しっていうのは、「例外対応のコードがあっても同じものととみなす」
という条件だろアホか >>730
同じことを実現する時、
1000行で実現するやつと
10行で実現するやつがいる
上級者はコードが短い
反論ありますか?
「同じこと」です。例外処理が含まれていれば同じではありません。
例外時の対応が実現できてないのだから 話を戻すとか言っておきながら、
しれっと、「同じことを実現する時」という条件を
省いてるんだからお里が知れるってもんだ >>730
> 例外処理=バグの処理
違います。例外処理は仕様です。
「同じことを実現する時」なのだから
仕様が異なるものを比較していません。 >>720
約1名NGにして連鎖すればマジで平和が訪れたわw ID表示してくれてるから助かってるだけなのに、なんでワッチョイ導入とかという話にならないんですかねこのスレは
こんなくだらない話でスレ消費するくらい住人全てが低レベルだからそんな話に移行しないんですかね きっと何も言い返せなくなったから笑ってごまかしてるんだよ 仕事レベル()の上級者()は例外処理書かないのでコードが短いです!コードが短いので上級者です!
なおこれ書いてるバカは例外とその処理について理解していない模様www >>740
話の流れわかってないなら参加するなよ
例外処理はは仕様の一部
初心者の方がコードが短いです。例外処理を書かないからです。
なぜなら上級者は仕様を完全に満たしてるからコードが長いからです。
とか比較になってないだろ。
短いけど例外処理を書いてない(仕様を見対してない)なら
それはバグだ。 例外処理は仕様ってわかってないのか?
上級者も初心者も例外処理を書くのは当然
その上で上級者の方がコードは短くなるって言ってる >>731-734
Q.「上級者のコードが長くなる場合がありますか?」
A.「上級者ならば要件を満たすために例外処理等をしっかりと記述するので長くなってしまうことがある」
ほれ答えろ 上級者とかいう曖昧な仕様で吹っかけて墓穴掘るとか本当に馬鹿なんだな 金を得るためにはステップ数が重要になるから
いかに無駄なコードを書くかが業務では重要なのである え?現役ですよ?
10万円給付金のオンライン申請システムなんてみればわかるでしょう
バカを演じてクソみたいなコード量産してるのよ彼ら >>743
要件が違うものを比べないでくださいアホですか? 日本語の能力的にも考え方的にもどちらが初級者かは一目瞭然なんだけど >>747
あれは作る側の問題じゃなく発注側の問題
官公庁相手に要件定義含めて1週間でまともなもの作れる訳がない >>751
1週間なわけねーだろ
だいぶ前から用意してるわ 政府の作るもんは総じてクソやぞ
GPKIは適当なスタンスでモジラに却下されて運用諦めたし
申請用総合ソフトとかいう登記申請用のソフトがあるんだが
こいつがまたクソみたいな出来でなあ >>743
JSは例外処理をする言語ではない
そういうのには向いていない
むしろ柔軟性を活かして問題を丸め込むコードを書くべき 例外処理「等」って書いてあんだろ
例外処理したほうが良いかって話をしてるんじゃなくて、上級者のコードが長くなる場合は何かって話をしてんの。
このスレマジで文盲しかいねーの?ww >>756
お前が文盲だろ
俺は短くなるとかそういうことを批判しているのではない
例え等と付けようがお前が例外処理を代表的なものとして書いていることは事実だろう
俺が思うJS上級者は例外処理を書き連ねたりはしないということだ
なんでお前の思う通りの話の流れに従う必要がある?
自分勝手すぎるぞお前 >>750
両方とも論破房にしか見えん
そうでなければ、伝わらない反論を延々と繰り返す、無駄な努力を費やしているコミュニケーション初級者 >>757
自分勝手すぎるのはお前だろwww
今までの話の流れを良く読めガイジwwww >>756
> 上級者のコードが長くなる場合は何かって話をしてんの。
上級者と初心者が同じもの(要件も同じ。例外処理も要件)を実装する時
上級者のコードが長くなる場合なんてありません 要件も同じとかまた後出し条件勝手に決めちゃったの?ww
「同じことを実現している」っていうのは「要件が同じ」ではないよ?www しかもいつのまにか「実装するとき」に話がすり替わってるしな 特定の例外処理も仕様として渡される前提でしか考えられない時点で察してやれ
アホ相手にいつまで続けるつもりなん 最初 (>>732)から言ってますがなw
> 732 自分:Name_Not_Found[] 投稿日:2020/06/04(木) 14:32:34.01 ID:i0hSlbHE [7/9]
> >>730
>
> 同じことを実現する時、
> 1000行で実現するやつと
> 10行で実現するやつがいる >>764
> 特定の例外処理も仕様として渡される前提
なんで渡される前提?
自分で考えた結果「仕様がことなる」なら「同じこと」を実現してません >>752
> 「同じことを実現している」っていうのは「要件が同じ」ではないよ?www
要件は関係ないよ。
結果として、実現してることが違うなら
「同じこと」を実現してることにはならない だから実現していることは同じなんだってw
それが前提の話なの
お前はバカだから前提から話を覆さないとダメなんだろうけどwwwww そういう要件ならともかく、例外処理を行って実行結果が変わってしまうとかどんだけ低レベルなプログラム書いてるんだ? >>768
お前が「例外が発生した場合に処理を行ってるコード」と「行ってないコード」で
実現してることは同じといくら強弁しても、違うものは違う
例外が発生した場合に処理をやってないなら、同じことを実現できてない >>769
> 例外処理を行って実行結果が変わってしまうとか
え? お前、例外処理を行えば、必ず同じ実行結果が得られると思ってんの?
例外処理の意味わかってないんじゃね?
もしかして例外が発生した時、その例外を修復して必ず正常に戻せるとか思ってるわけ? >>753
30万円の給付とは要件も対象者も全く別だからな
4/16決定で遅くとも4/24には客側でテストできる状況にしないと間に合わない
マイナポータルの流用だから要件がガッチリ決まってれば
2日もあれば十分実装可能だろうけど
あういうのは要件決めるのに一番時間がかかる 質問していいですか?
[
{ カテゴリ: 果物, 名前: りんご, 価格: 100, ... },
{ カテゴリ: 果物, 名前: みかん, 価格: 50, ... },
{ カテゴリ: 野菜, 名前: キャベツ, 価格: 200, ... },
:
]
みたいな配列をソートするときのソート関数って
優先したい項目から比較して
同値だったら次に優先したい項目を比較して
:
っていう考え方で合ってます?
自分でやってみて、今手元にあるデータでは上手くいっているように見えてるんですが
何か注意したら良いこととかあれば教えていただけるとありがたいです なんで例外の話になってん
constの話はどないなっとるんや >>777
ありがとうございます
それ読んでました
仕様的なことは調べればわかるんですが 質問です。関数から関数を呼び出す際に、引数を省略することはできないでしょうか?
例えば、
const func1 = (a,b,c) => {
func2(a,b,c)
}
const func2 = (a,b,c) => {
console.log(a,b,c)
//出力1 2 3
}
func1(1,2,3)
のようなもので、func1でfunc2を呼ぶ際に引数を省略したいです。 func1とfunc2ぼ両方から参照するべき値なのに、別の関数に分けている理由を書いて説明してくれ。
設計がおかしいか説明すべき何かを端折っているかのどちらか。 >>782
const func1 = (...xs) => { func2(xs) };
const func2 = (xs) => { console.log(...xs)};
func1(1,2,3); func1の中で他にも色々やってからfunc2を呼び出すんでしょ
でfunc2に引数を指定せず引数を渡したいと
無理くない?
>>785
xs省略できてないじょん じゃこれで
const xs = [1,2,3];
const func1 = () => { func2() };
const func2 = () => { console.log(...xs)};
func1(); >>787
ワロタww
かなり前だが、お客が無理やり作った
変数が何百個もぜーんぶグローバルに置いてあって
散りばめられた無数の関数はみな引数なし
みたいなFlashのメンテをやって
発狂しそうになったの思い出した >>788
それはスコープ切らずにグローバルに置きまくるのが悪いだけでクロージャに罪はない
>>787のパターンは状態とそれに依存するメソッドを書く場合に普通に使う
値を受け渡しするのが常にベターなわけではないからね 行末のセミコロンって無くても動くんだけど無くちゃだめなんですか? ASI(automatic semicolon insertion)って機能で多くの場合は自動でセミコロンが挿入される
ただ挿入されないケースもあるのでASIの仕様を理解しておかないと問題が起きた時に困る
なのでセミコロンを書かないスタイルでやりたいなら
ASIを理解しておくかlinterで自動追加するか
あとはミニファイしたりブックマークレットにしたりする場合もセミコロン無しだと困る 1行が長くなって画面に収まらないような場合、途中で改行して整形して見やすくするスタイルだと
セミコロンで終わりを明示する方が読みやすい >>793
一行に複数書く時の区切りだよ
行末ならなくても構わん
自分は行末でも必ず書く派だけど
プロミスでメソッドチェーンをよく書くようになってからは
なくても良いんじゃないかな?とは思ってる 配列終わりのカンマとかもそうだけど
本来必要だったり不要だが補完するからどっちでもいい
っていうのはいっぱいあるだろう
そうなればあとは好みやどのコーディング規約採用するかによる
自分はセミコロン絶対つけるけどね
配列のカンマも自動挿入されたらご丁寧に消してるけど >>794
なるほど自動で入れてくれる仕組みがあるから動くんですね
>>795
>>796
無限にワンライナーできるのかな
>>797
トレリングカンマは一番最後の順番かえてもxx pできるからいれたいですね >>793
人間が作ったものだから完璧ではないし
理屈で説明できるものとも限らない
0から生み出せるわけもないので今までの歴史やしがらみを背負ってる
それは普段人間が話す言語でも同じでしょ?
でもどうしてここがこうなっているのか
こうした方が良いのかという細かいところに拘ってても
使えるようにはならない
最初はありのままを受け入れること
それに慣れることが重要 >>798
ワンライナーというのかどうか知らんけど
uglifyされたやつとか、一行だろ? あれだ日本語の句点みたいなものだと思えば良い無ければ無いで読みづらいもんだろう? そうか?
ある方が読みづらくてわざと省くことも多いと思うが
ある方が自然で読みやすいのって1文が1行に収まらないくらいの長文のときと
文が改行で分けられずに連続する場合で要するに本を書くような場合くらいでしょう? エディタで改行マーク表示されただけで読みにくいと思うのですかね >>791
VSCode のデフォルトのコードフォーマッター・Beautify とか、
拡張機能のPrettier とかを使うと、自動的にセミコロンが入る
その後、Webpack を使うと、圧縮されて、セミコロンが無くなる
つまり、人間が見るためには、セミコロンが必要で、
ブラウザへ送信するには、サイズを少なくするため、セミコロンを削除する
Ruby on Rails で有名な民泊サイト・Airbnb のスタイルガイドなどを使う >>804
それはコード圧縮してるからだろ、馬鹿
しなきゃそのままだ Airbnb のスタイルガイド
https://github.com/airbnb/javascript#semicolons
Ruby on Rails で有名な民泊サイト・Airbnbのスタイルガイドなどを使う
誰が何を言おうが、Ruby/JavaScript では、Airbnbのスタイルガイドに逆らえない。
Airbnbの開発陣に勝てるわけないから
皆が、このスタイルガイドをインポートして、
それと異なるものだけを、上書き設定して使っているから その更にAirbnbが逆らえないGitHubが推奨しているスタイルを使うわ >>802と>>806なら、句点がある後者を読みやすいと思うね はいはいRubyがさいきょうでつね(笑)Rubyスレにすっこんでろ(笑) 1秒で分かるRuby宣教師
案の定phpスレにも来てるな そういえばrubyってあったね。 めっちゃ懐かしいわ
勉強しようと思ってそのままブーム終わっちゃってたな・・・
昔はよく見かけたけど、少しくらいかじっとけばよかった >>809
どこからRubyが出てきた?
文章読めない人? セミコロンの仕様を受け継いでるLuaでは基本付けないのが普通なので、JSでも基本付けないのが普通だよ >>816
マジで!? 付けるのが普通じゃないの?
普通っていうのは何を基準にしているの?
サンプルコード書いてるサイト10のうち9は着けてないとか? Pythonの影響でつけない人が増えただけで
つけるほうが普通だろうな セミコロンの有無はプログラマー歴を推し量る目安になるかもね
つけなくていい論者は浅い C系やPerlのようにセミコロン必須の言語やってるかどうかというのは大きいだろうね 末尾にセミコロンをつけてもつけなくても動く言語は、
どの言語もセミコロンの有無で意味が変わることがあるだろう
あとはその影響が大きいか小さいかだな。
JavaScriptは比較的大きい?Rubyは比較的小さい?
それとも影響の大きさは同じだけど
JavaScriptはより安全な方を選択する
Rubyは適当。動けばOK。そういう人種ってことか? 名前だけ親玉のJavaだってセミコロン必須だしなあ
セミコロン不要だとか見づらいとか言ってる人は他言語一切触ったことないんじゃないのってレベル >>819
そう?
おっさんでも、転向する人はそれなりにいるんじゃね? >>825
セミコロン使う言語使いのおっさんがjsのみ?に転向したとして、セミコロンをわざわざ抜くようになる理由がないね >>826
いやそうではなく
つける/つけないの転向 セミコロン使う言語とjsも並行して使ってるけど、俺はいちいちjsでセミコロン抜こうとは思わんよ
jsでは書き忘れてもエラーにならんから害はないが、必須言語でjsのノリで省略してエラーになる方が生産性悪い セミコロンなしの言語や、セミコロンなしでも意味が全く変わらない言語なら
セミコロンなしでいいだろうけど、JavaScriptやRubyはセミコロンの有無で意味が変わる
これは好みとかではなく、事実 意味が変わるとか事実とかさ、そんな話今まで出てこなくて
不要!見づらい!
レベルの話ばっかりだよな
constと同じで >>832
ちゃうちゃう
話のレベルが低いのが同じってこと 話の中身なんもないのに、それに意味を見出してる人って荒らしだと自認してるようなものですよ constとセミコロンはこのスレにおける宗教論争の典型的な火種なので
いいだっしっぺの質問者が面白がって焚きつけてるだけ疑惑 質問者は回答を完全放置が基本たから、どっちにしても迷惑
ここは既に質問ズレじゃない constはどっちでも良くないけどセミコロンはどっちでもいい
でもどっちもESLintで対応可能だからどっぢでもいいかも var hello = x => "hello" + x
[a, b] = [1,2]
(() => {console.log(a, b)})()
プラグインとかで他人のコンテキストでコード実行する時は気をつけないとわかりにくい不具合に遭遇する 結論としてセミコロンは、
明らかに付けたほうが良いという理由もないし、
明らかに付けないほうが良いという理由もない
大多数の人が慣習や気分で決めてるだけ
そうでなければLuaでは付けない人が大多数で
JSでは付ける人が大多数な説明がつかない >>822
JSの名付け親はJavaだけど、実際の片親はLua
Luaからはプロトタイプベースとかもそうだけど
セミコロンのルールはほぼ100%引き継いでる
そのLuaでは付けない人が圧倒的に多い不思議 >>829
それはある
サーバーサイド言語がセミコロン必須なら
JSでもセミコロンをつけるのが凡人には吉
もちろん柔軟に思考できる頭を持ってる人は好きにしたら良い LuaとJSはそっくりでしょ
片方が十分書ける人はもう片方も書けると言っていい LuaはC系から来てるんだが、そっくりという845の感覚が正義だというのであれば
CもJSの祖父だし人類皆穴兄弟みたいな理論になる
つーかJSが影響を受けた言語をLuaのみとする考え方がもうね、const 名付けの親とかいる中での片親とわざわざ例えてるのに?
どうやったらそんな考え方ができるのわさ? >842 :Name_Not_Found :sage :2020/06/08(月) 20:38:10.47 ID:???
>>>822
>JSの名付け親はJavaだけど、実際の片親はLua
>Luaからはプロトタイプベースとかもそうだけど
>セミコロンのルールはほぼ100%引き継いでる
自分で片親と定義してJavaとLuaのみ挙げてLuaにそっくりだからと>>842で100%引き継いでると明言してるのを忘れる鳥頭 varなんて使ってるからだ!
constを使っていれば>>842の悲劇は起こらなかった! >>848
そこに書いてあるとおりセミコロンのルールに関してのみの話でしょ
いつ誰がJSが影響を受けた言語をLuaのみと言ってるのさ?
節穴か? セミコロンの有無で、意味が変わって、バグるので危険だから、
>>806
の、Airbnb のスタイルガイドでは、セミコロンを付けるように決まっている >>850
845 :Name_Not_Found :sage :2020/06/08(月) 20:48:45.73 ID:???
LuaとJSはそっくりでしょ
片方が十分書ける人はもう片方も書けると言っていい
自分でLuaLua推しまくってて今更何言ってるんだ 最近のセミコロンつけない人は
少なくともLuaやRubyなんてマイナー言語の影響でないのは間違いない
PythonやKotlinあたりだろうな
Kotlinはオプショナルだけどサンプルコードのほとんどでつけてないし
(特に初学の場合)学習に際してそういうサンプルコードの影響は大きいだろう >>852
>842 === >845
の証拠があるのだろうか? あんな絡みしといてかっこわるい言い分だな
チンポついてないのか Luaが対比対象として持ち出されてることが不思議そうだったから
確かに俺は自分の経験からLuaとJSは似てると言うことは言ったがそれだけでしょ
Luaは良い悪いとか使おうとか推すようなことは言っていないし
誰かを否定したり絡んだりしてはいないのだが >>841
> 結論としてセミコロンは、
> 明らかに付けたほうが良いという理由もないし、
> 明らかに付けないほうが良いという理由もない
>
> 大多数の人が慣習や気分で決めてるだけ
> そうでなければLuaでは付けない人が大多数で
> JSでは付ける人が大多数な説明がつかない
話の元はこれで、これを元に話をしているはずが指摘されたら俺は違うとか話は違うとか言い出す
ちんぽなし JavaScriptでもRubyでもセミコロンの有無で意味が変わるから
セミコロンをつけたほうがいいという明確な理由はある
そしてJavaScriptでは常にセミコロンを付けたほうが
意味が変わらないから良いという考え方に対して
Rubyはバグったらそこだけ直せばいいじゃん
という考え方 SpaceXでChromeとJavaScriptが宇宙船のUIに使われた件で盛り上がってるかと思ってきてみれば全然そんなことないのな 個々人様々なレベルで理由は持ってるだろうが、
どうしてそういう慣習になってるのかというと
そういう慣習のもと習ったからと言うのが大きいだろうな >>859
そこからLuaの話続いてるだろ
文盲かよ >>863
Luaの名前が出てることに文句を言ってたのか?
Luaの話が続いてるって言うが、実際はLua知らない人がそれらのレスを見てLuaの何が分かる?
Luaはあくまで対比として持ち出されてるだけで、Luaについて誰かが能動的にあれこれ紹介してまわってるわけではないだろ
ある固有名詞が話でずっと使われることってこのスレを見返してもたくさんあるでしょ
その中で別にLuaは過剰ではないと思うが >>861
5chだとdragon2が
・const使ってるか
・セミコロン使ってるか
・jQuery使ってるか
このあたりが分からんと盛り上がらないぞw なんだよこのしょーもない流れは
なら難しい質問してやっから答えてくれよ
"妥当なURL"かをチェックするのにnew URL()で対応しようと思いきや、
IEとかいうクソブラウザはURLがただのオブジェクトですやん
IEで手軽にURLチェックを行えるハック的な手法は何かないかね? soは素晴らしい
https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*) func().then(() => { ふんにゃか }).catch(() => { ふんにゃか });
↑この行末セミコロンはふつう、でも1行長くて読み書きづらい
――――
func()
.then(() => { ふんにゃか })
.catch(() => { ふんにゃか });
↑メソッドチェーンの最後だけ行末セミコロンは
配列やオブジェクトの、最後だけカンマ付けないのと似た違和感
――――
func()
.then(() => { ふんにゃか })
.catch(() => { ふんにゃか })
;
↑統一感はあるが、やりすぎ感が否めない
なんかもう、セミコロンいらないんじゃないかな…って気がしてきた >>872
そういうのを統一的に書きたかったらこう
func(
moga
).then(
hoge
).catch(
fuga
);
むしろこういうときはセミコロンがあったほうがわかりやすい
どちらかというと1行ずつ書いていくようなときが不要 質問です
変数にfor文の結果を設定したいのですが、↓のやり方のようなarrayを事前に宣言せず、
let obj = {
a:"aaa",
b:"bbb"
}
let array = []
Object.keys(obj).forEach(function (key) {
array.push(key)
});
console.log(array)
出力[ 'a', 'b' ]
↓のように書きたいです(理想)
const array = Object.keys(obj).forEach(function (key) {
array.push(key)
});
console.log(array)
出力[ 'a', 'b' ]
何かしらの工夫をしてこんな感じに書けないでしょうか? foreachを関数化すればできるのですが、ほかに手段はないでしょうか? const array = Object.keys(obj); >>868
RFC3986でぐぐるか、polyfillを使え すみません。例を間違えました
let obj = {
a:"aaa",
b:"bbb"
}
let str = ""
Object.values(obj).forEach(function (key) {
str = str + key + "test"
});
console.log(array)
出力aaatestbbbtest
このようなもので、strの宣言をせずに、objectのvalue値に文字列を付与して出力したいです。
ベストな書き方を教えていただきたいです。 >>883
reduceでしょうか?
let obj = {
a:"aaa",
b:"bbb",
c:"ccc"
}
const result = Object.values(obj).reduce(function(totalString, currentString) {
return totalString + currentString;
})
console.log(result)
value値のみの出力ならできるのですが、value値とvalue値の間に文字列を追加したいです。 return totalString + “test” + currentString
ってすればいいじゃん >>885
aaatestbbbtestccc
と出力されました。
出力したいのは
aaatestbbbtestccctest
です >>886
そのくらい自分で試行錯誤しなよ
簡単なreduce使えないレベルなら無理せず
let str = “”のように外側で空の一時変数を宣言して
それにfor-inで追加していくスタイルでやったほうがいい let str = Object.values(obj).flatMap(value=>[value,"test"]).join(""); >>888
天才。ありがとうございます。
>>887
お前みたいな的を射ない返答するやつは消えておk >>889
自分で考えないやつはflatMap使っとけばいいよ
20倍遅いけどな electronは凝ったインターフェースが難しいのですか?
2dキャラを動かす物を作りたいのですが ツクールMVでも結構な事ができるから
まずそれでできないかを検討してみたほうがいいよ
つうかツクールMVで実現できないことを
初心者が一人でやるのはクソ大変だと思う
次に検討すべきはUnityかな
両方ともWebプレイヤーがあるし >>891
Electronだから特段難しい、みたいなことはないと思う
少なくとも自分は
ふつうにブラウザで作るときと同じようにやっているよ
Adobe Animateが吐き出した、ちょっときもいcanvasアニメも
まあふつうに動いてる Electronを使う意味は?
今時はPWAでよくね? ウディタのようなものを考えています
visual studioだと少し開発環境が重いので、electronを考えています よくわからん
2Dゲームの制作ツールを作りたいということ? 数年前、某コンパクトカメラが
スマホとの連携にPWAで挑戦して
最初は大変なことになっていたなあ PWAはまだ始まっていない
フルマラソンで言ったらまだ0m
準備運動してる段階
現時点ではまだ煩雑で一般ユーザーには管理が難解なプロンプトを控えて
強力な機能をどうやってWebサイトに許可していくかっていう問題が
アプリをインストールしてもらうっていう方向性で決まりつつある段階
だからだからローカルファイルアクセスだったりバックグラウンド同期だったり
「強力な機能はアプリで」ということが常識になる
だけどまだ方向性の段階なのでそれらのセキュリティモデルや強力なAPIは実装されていない
それとスマホだと正解が分かりやすしだいぶ達成されてきてるけど
アプリをほかのネイティブアプリと並んで管理したり、
連携したりする機能もまだ整備されきっていない
そもそもWebサイトがアプリがすでにインストールされているかどうか
検知することもつい最近までできなかった
PWAが本格的に始まるのは2025年から わかんだね? Webで大規模なツールを作ろうとすると色々困る
レンダリングとかDOM要素に何となく任せられるのがWebの強みなので
自前で色々やろうと思うと厳しい
フルCanvasでやろうにも、UIイベントを適切に扱って
ドラッグとか自前で準備するのは苦労するし
そこらへんフレームワークに任してしまうと
結局DOMでやるのと同じく痒いところに手が届かない
そのへん乗り越えてもとにかく色んなところで躓く
最近出てきたrequestVideoFrameCallbackとか、
まだまだこういうAPIが不足してる >>901
準備運動の段階でぎっくり腰になって出場辞退だろw
結局の所ネイティブアプリの機能にはかなわないので
本格的なアプリではPWAはありえない それは非常に正しい
ただし盲点なのはPWAでは実現困難な「本格的なアプリ」というものが少ないこと
それこそWebビューがメインのアプリもあるし
Webビューを使うことは今や常識になっている
じゃあ側はネイティブである必要があるのかと言うと
そうではないアプリのほうが大半
その「ネイティブアプリの機能」とやらに
頼る必要があるアプリがそもそも少ないというお話 ならブラウザでいいじゃん?
という意味がわからない
そもそも今のPWAは普通のWebサイトと明確な境界があるわけではないでしょ
将来的にそうなるだろうけど、今はSW使ったWebサイトのリンクを
ホームに置くのとどのくらい違うのかと言ったら少しの違いしか無いでしょ
逆にその少しの違いを出すためにどのくらいの追加の労力が
必要なのかと言えばそれも少しでしょ
自転車とバイクを比べてるのなら、こっちで良いとか言えるけど
120ccと125ccのバイクを比べてもそんなのどっちでも良いというか
悩んだりそこで決めるようなことでは通常無いでしょ
もちろんツールをふくむアプリ的なものとして公開したければ
ボーダレスの方が良いかもしれないけどさ
でも最近Windowsがアプリをタブでまとめるスタイルを試行錯誤してるように
そのアプリが独立するのってユーザーの使い方だったり、
そのアプリとWebサイトの連携しよう次第では必ずしも良いものとは限らないよね
例えばその作成ツールで作られた作品とのやり取りも考えたいかもしれないけど
作品を読み込むところはツールで完結できても
その紹介のWikiは、ホームページはとかなるしさ
まあこれ今自分がちょうどそういう物作ってるから言ってるんだけどね 正直あれだよね、
ネイティブアプリ中でWebビューで表示が出るのって
大抵体験としてそんなに悪くはないけど、良くもないよね
結局制作の都合というか妥協だよね
例えば最近の家庭用ゲーム機やPCゲームで
説明をWebビューでいきなりポインタが出るのって
ある意味納得してるから分かりやすいんだけど、
そのゲームをちゃんと作ってて体験を考えてると、
やっぱり良い体験とは思えないんだよね
フルで表示させていくらかWeb臭さをなくそうとするけど
どうしてもギャップ感は取れないんだよね
だからPWAで作ってても、どうやってWebっぽいコンテンツと
連携するかってすごい難しいんだよね
もちろん何も気にしなかったらそれまでなんだけどさ
まああえてタブを表示させて、関連Webサイトをそのウィンドウに集めるってのもありかな html.css.javascriptを極めるという選択肢はどう思う?
phpやrubyには手を出さずに。 >>908
phpだけ最低限のことができるようにしておけば、そのやり方で問題ない webやってる以上サーバサイドは必要だろう
ただjavascriptだけでいいよ
node.js使えばいいだけなんだし
ただphpに比べて導入に手間取るだろうな
そこで挫折するかどうかが鍵 node.jsが普通の言語ならな
非同期メインなので使いづらい
それはそれでメリットがあるんだが、そんなの必要ない場合が大半なわけで
つまり大部分のユースケースに当てはまらない >>908
何の目的に対する選択肢だよw
目的や目標を定義せずに選択肢の妥当性を考えても無意味 >>911
今どき全部非同期じゃね
極論サーバサイドなんてDB操作するだけだよ >>913
お前非同期の意味をわかってないな
DB操作するだけなのに非同期のコードを
書かないといけないのが駄目だって話 WEB上で同期なんかしてたらアクセスが多くなってきたらすぐに死にそう >>914
テンプレみたいなもんなのに
そんな大げさな話でもないだろ 昔は同期が基本のやつに比べて最初のハードルが高くて面倒くさかったのは確か
今はasync/await使えるようになったからPromise理解できるならそんなに差はない あんまサーバサイドの話すると
くっそうざいRubyなら〜のやつが沸くからそのへんにしとけな do {
num = prompt("数値を入れてください", 0);
} while (num);
alert('ok');
上のコードを実行し数字の0を入力すると、
whileの真偽条件がfalseとなってループを抜けるかともうのですが抜けません。
何故でしょうか? >>919
今はPromise対応のAPI用意されてるよ だから単項+演算子を使えって言ってるだろ
JSerならこう書かないとまずい
num = +prompt("数値を入れてください", 0); そもそもユーザーの入力を直接ループの終了条件にするのってどうなん?w なにか問題があるか?
ユーザーのPC上でユーザーのために動くプログラムなのだから
責任がユーザーにあっても問題ないだろう >>922
戻り値は文字列でしたか!
数値の入力だったので0の真偽値はfalseのはずなのに何でだ?となってました。
ありがとうございます!
型をもっと意識します, >>926
現代のJavaScriptチュートリアルってサイトのループについてのセクションの課題を質問するためにアレンジしたものなんで、あまり深い意味はないです。 javascript.infoはいいチュートリアル
でもModernを「現代の」と訳されるとなんかきつい >>931
あとJsprimerってとこもよく見ます。
この2つ見てると入門書籍買わなくていいかなと。 prototypeってMethodだけでpropertyは入れられないんですか? jsdocについての質問です
イベント名とコールバックを渡すような関数の場合どのようにjsdocを記述すれば良いのでしょうか
例えば
addEventListener('click', () => {...});
on('data', () => {...});
などの関数です
/**
*
*/
addEventListener();
/**
*
*/
on();
の様に書いてしまった場合
これらは既に他の定義がなされている関数のはずですが良いのでしょうか
正しい書き方等がありましたら教えて頂きたいです '1111'を与えたら10進数、'0111'を与えたら8進数として"自動的に解釈して欲しい"
こんな場合に何か上手いやり方はあるかい? >>928
お前大丈夫か?
フォームの入力だって間違えたら無限にやり直されるだろ
今のブラウザはプロンプトが出ててもタブ操作が効くのだからそれと同じだろ
変な固定観念は捨てて論理的に考えなよ >>937
だよな
sql直接叩くくらいやってもいいよな >>937
全くもって非論理的な主張で笑
論理的に考えなよwwww >>934
>イベント名とコールバックを渡すような関数の場合どのようにjsdocを記述すれば良いのでしょうか
@event, @callback
>これらは既に他の定義がなされている関数のはずですが良いのでしょうか
@external, @link >>940
俺的には論理的というより倫理的に許せん
まあサンプルコードが元ネタだからあまり言うのも何なんだが、
言語処理体系に依存する書き方について、固定観念がどうのこうの言っちゃうなら
コード書くのやめて欲しいレベル そんな
「たかしくんは15分後に時速6kmで追いかけました」
にイチャモンつけるようなのやめえやw >>942
考え方の前提が間違っている
そもそもプロンプトを出す時点で普通のサイトではないということを忘れてる
RPGのゲームで選択肢によって無限ループがあったとしても倫理的に許せなくないでしょ?
そういうコンテンツなのだから
普通のWebサイトとするとそもそもプロンプトを出すのが問題があるでしょ?
後はユーザーの入力を適切に扱う努力をするのも当たり前の話でしょ?
そういう前提で一般的にユーザーの入力次第で何度もプロンプトが表示されても、それ自体が一般的におかしいことではないでしょうと言ってるのよ >>944
論点が全く分かってない時点で論外
レスも読んでない低レベルを披露しなくていい >>944
お前の理屈では普通のサイトではないからSQLインジェクションも気にしなくていいってことになるね
趣味ならいいよって言われてる意味が全くわかってないww processingとglslってできることは同じですか? ・constは名前と値が常に一致してる
・上級者はコードが短い
・固定観念を捨てて論理的に考えればユーザー入力を直接ループの終了条件にしても何の問題ない (new!) >>946
やめえて
if節とコマンドプロンプトを学んでるレベルの子に
SQLインジェクションを持ち出して
誰が得するんだよ 結局、現代のJavaScriptチュートリアルのサンプルコードが悪いってことか? >>945-946
この話は
>>927-928
から始まってるものだからね
違う論点で話したいのならそれを明示してくれ >>949
お作法としてどやねんってだけの話
趣味ならよしと言われて納得できずに長文で反論してる内容に則って返してるだけに過ぎんわw
>>937がいう意味不明な固定観念を捨てろという言葉のほうが誰得なのよ >>938
現在のparseIntは8進数解釈は自動的にしないんだが
なんだそのクソ古い情報は あんまMDN鵜呑みにすんなや 配列のソートについて質問です。
const arr = [5, 1];
arr.sort((a, b) => {
// 何が起こっているのか確認するためコンソール出力してみる
console.log(`a : ${a} ・ b : ${b}`);
return a-b;
});
console.log(arr);
引数aにはindexの1、bにはindexの0が入るのは何故なんでしょう?
aには0、bには1が入る気がしますが。 >>957
a : 1 ・ b : 5
[ 1, 5 ]
ってでたけど >>958
コードをコピったサイトでも
a:1,b5ってなってたんだけど、自分のChromeのコンソールでは逆なんです。 >>958
その通りなんですけど、引数の順番と配列の順番が逆なのかがわかりません。
コードをコピッたサイトではaに5,bに1が入ってるんですよね firefoxだとa : 5 ・ b : 1だけどそんなの実装次第 パスの結合ルール分かる奴おるかなー
pathname = '//example/demo/'
これに'hogeeee'を結合させると'//example/demo/hogeeee'となる。ここは問題無い。
'/hogeeee'を結合させると'//example/hogeeee'となる。
'//hogeeee'を結合させると'//hogeeee'となる。
何故こうなるのかルールの定義が分からん。 >>963
スラ2つの後はホスト名だからだろ
hogeeはただのファイル名扱いで後ろに連結
/hogeeはスラがドキュメントルート扱い
//hogeeはホスト名扱いで上書き //example/demo
↑これはパスではなくスキーム抜きURLなんだよ まぁ確かにこれが特別スキーム抜きURLならそうなるんだが、
あくまでも'//example/demo/'がpathnameで、hostnameは空文字なのよ >>953
parseIntだけ使う、なんて誰もいってない
正規表現で条件分岐してから使え >>963
ただの絶対パスだろ
JavaScript関係ないから、余所で聞け
あと、「〜となる」とか、具体的に何をしたらそうなるのか、何も書いてないじゃないか >>963
どう見ても、URLの問題なのに
「パス結合ルール」という独自用語を発明して、
変数に代入してJSスレで質問するやり方がせこすぎる 別にそんないやらしく非難することないだろ
ここ最近の実際は微塵も困ってないでっち上げ質問に比べたら
まだ馬鹿なだけでマシな方だろ 自分より下を指差して、「マシな方」と主張されてもなー
JSスレでURLの質問を許容する意味ある? URLの質問だからといって許容しない理由はないだろ
あの質問の内容じゃ状況が掴めないのでそもそもスレチかどうか判断不能ということが現時点での問題なのであって
場合によってはURL APIを使って望むようにURLを組み立てる方法とかの話になるかもしれないし
まあ何れにせよURLを組み立てたいんだろうから、それはJSを使ってということでまずはJSの質問と考えていいでしょ >>973
スレ違いの質問をお前が都合良く解釈してるだけだろ
そんなにいうなら、
https://url.spec.whatwg.org/
を出して、回答は終わる >>973
> あの質問の内容じゃ状況が掴めないのでそもそもスレチかどうか判断不能ということが現時点での問題なのであって
といっておきなから、
> まあ何れにせよURLを組み立てたいんだろうから、それはJSを使ってということでまずはJSの質問と考えていいでしょ
という矛盾
「スレチ判断不能」と「JSの質問」のどっち?
(最近、よく出る日本語わかってない系かな) >>975
結論ありきだから論理矛盾してるんだろうな
目的は、スレチを否定して質問に答えてもらう、>>963の工作員ってところか コードを書いてないからスレチかどうかはわからんな
にしても君は毎日イライラしてんねw 質問者に確認するのが一番なはずなんだが、なぜかスレチに反応して空中戦が始まるんだよな
意味分からん 夜中3時に丁寧に解説してくれた>>964の
報われなさたるや 直接的な答えは>>968にある
基本知識を得たいなら>>974 >>966をみる限り、URLの話をしているのかも怪しい
独自システム上のpathnameの質問の可能性は否定出来ない そもそも、>>963のいう「結合」の定義が分からん
再現コードを出す工夫ぐらいしろ
>>1が読めないのか >>981
質問者が回答を煽ることしか出来ないなんて世も末だな 上下関係をはっきりさせてやらないと駄目だな。
質問者は下。だからへりくだれ。
回答者は上。どんな回答でもありがたく受け取れ。 > ・他人の回答を批判する代わりに、自分ならこう書くという例を示してください
これもな
スレチを批判するなら、回答すればいい × スレチを批判するなら、回答すればいい
○ スレチ指摘者に反論するなら、回答すればいい parseIntくんは完全に回答間違ってんのになんでこんなに態度でかいんだ?(笑) >>989
>>936
俺は間違った回答をしたとは思わん
>>953が「自動的」というこちらが言ってもいない条件を勝手に付け足しただけだ
>>936のような曖昧な質問をする奴にはヒントを与えるだけで十分だ
これだけ問題になっても出てこないしな
const f = string => parseInt(string, /^0/.test(string)?8:10);
console.log(f('010'), f('10')); // 8 10
文句があるなら、何が間違っていたのか論理的に反論しろ
(元質問者>>936はいつものように逃げるんだろうな) >>991
間違ってるよ
間違いは間違い
でも君は正しいことをしたと思うし
悪いかというと悪くはない
ただエスパーに失敗しただけ
そんなこと誰でもあるから気にするな
これからも頑張れ >>992
そうか
君はエスパーを期待する質問者だったか
難儀な性格をしているな >>973
正解
URL APIで特別でないスキームを扱った時のお話
変数名から分かると思ったがURL APIてあまり浸透してないんだな
仕様書は当然見てるが、仕様とChromeの挙動が明らかに食い違ってるから駄目元でお前らに投げてみたが、やっぱり駄目だったな >>995
流石にこれは質問の書き方がダメすぎるだけ
ダメな質問がダメな回答を生む一番の原因だから URLの話なのは皆想定してたし、URL APIぐらい知ってる
>>995のエスパー力検定試験には不合格だったというだけ ワッチョイをconst宣言しないからいつも無責任なアホが群がる このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 42日 5時間 30分 39秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。