+ JavaScript の質問用スレッド vol.118 + [転載禁止]©5ch.io
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2015/04/22(水) 01:35:08.20ID:TQI/XWNo>>2-5のテンプレを読んだ上で質問してください。
■質問を書く上で
(1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。
(2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。
(ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など)
(3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。
(4) 常に自発的に調べる心構えを持ってください。
具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。
わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。
(5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。
(6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。
※必ず「問題の事象が再現されること」を確認してください。
必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。
(7) サンプルコードに HTML が含まれる場合は http://validator.w3.org/ で [Check] してみてください。
(8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2の質問テンプレートを活用してみてください。
(9) ライブラリ関連の質問は禁止です。関連スレにあるライブラリ質問スレで質問して下さい。
(10) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。
0002デフォルトの名無しさん
2015/04/22(水) 01:41:28.83ID:TQI/XWNo【環境】OS, 実行環境をバージョンと共に記入してください。
【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。
【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。(Windows なら「コピット」を活用)
【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
1レスに収まらないならコード投稿サイトを利用してください。
http://jsdo.it/ http://jsbin.com/ http://jsfiddle.net/ http://ideone.com/
■前スレ
+ JavaScript の質問用スレッド vol.117 +
http://peace.2ch.net/test/read.cgi/tech/1404146244/
■過去スレ全集(Web制作)
http://www2.atpages.jp/mirror/2ch/javascript/
http://usamimi.info/~mirrorhenkan/2ch/javascript/ (閲覧のみ)
■テンプレ案(Web制作)
http://fiddle.jshell.net/fH4cC/167/show/light/
■関連スレ
ECMAScript デス 4
http://peace.2ch.net/test/read.cgi/tech/1325448978/
JavaScript ライブラリ総合質問所 vol.4
http://peace.2ch.net/test/read.cgi/hp/1400834117/
CSS初心者スレッド=13th=(c)2ch.net
http://peace.2ch.net/test/read.cgi/hp/1423959729/
Canvasについて語ろう
http://peace.2ch.net/test/read.cgi/hp/1305093769/
0003デフォルトの名無しさん
2015/04/22(水) 01:42:40.40ID:TQI/XWNohttp://fiddle.jshell.net/vSqKr/43/show/
■開発者ツール(Developer Tools)の基本的な使い方 (全部は http://fiddle.jshell.net/vSqKr/43/show/#Browser-Developer-Tools )
◆諸注意
- 本説明では Google Chrome の開発者ツールの名称に従います。他ブラウザで使う場合は適宜読み替えて下さい。
- IE9- でコンソールを使うには予め開発者ツールを起動しておく必要があります(開発者ツールを起動しないと console.log() が機能しません)
- 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 型の中身をそのまま表示してくれます。)
0004デフォルトの名無しさん
2015/04/22(水) 01:44:12.20ID:TQI/XWNo◆ Standard ECMA-262
http://bclary.com/2004/11/07/ (ECMAScript 3 HTML版)
https://web.archive.org/web/20140715002617/http://www2u.biglobe.ne.jp/~oz-07ams/prog/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://people.mozilla.org/~jorendorff/es6-draft.html (ECMAScript 6 有志HTML版)
http://kangax.github.io/es5-compat-table/ (ECMAScript 5 compatibility table)
http://kangax.github.io/es5-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 和訳)
◆ Document Object Model (DOM) / CSS Object Model (CSSOM)
http://www.hcn.zaq.ne.jp/___/WEB/DOM4-ja.html (DOM Standard (DOM4) 和訳)
http://www.w3.org/TR/DOM-Level-3-Events/ (DOM3 Events)
http://www.w3.org/TR/uievents/ (UI Events)
http://www.hcn.zaq.ne.jp/___/WEB/cssom-ja.html (CSSOM 和訳)
http://www.hcn.zaq.ne.jp/___/WEB/cssom-view-ja.html (CSSOM View Module 和訳)
◆ その他のWeb関連仕様
http://domparsing.spec.whatwg.org/ (DOM Parsing and Serialization - innerHTML等)
http://www.hcn.zaq.ne.jp/___/WEB/XHR-ja.html (XMLHttpRequest 和訳)
http://www.hcn.zaq.ne.jp/___/WEB/File_API-ja.html (File API 和訳)
http://www.whatwg.org/specs/ (WHATWGの仕様一覧)
◆ MDN (Netscape/Mozilla)
https://developer.mozilla.org/ja/docs
◆ MSDN Library
https://msdn.microsoft.com/en-us/library/ie/hh828809 (Internet Explorer API)
http://msdn.microsoft.com/ja-jp/library/yek4tbz0.aspx (JavaScript)
http://msdn.microsoft.com/ja-jp/library/cc427807.aspx (JScript)
http://msdn.microsoft.com/ja-jp/library/cc409712.aspx (DHTML)
0005デフォルトの名無しさん
2015/04/22(水) 08:35:00.62ID:z+J4CGLI0006デフォルトの名無しさん
2015/04/22(水) 10:26:00.49ID:oUgI0BBb/ ̄ l | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
■■-っ < んなーこたーない
´∀`/ \__________
__/|Y/\.
Ё|__ | / |
| У.. |
0007デフォルトの名無しさん
2015/04/22(水) 16:03:41.91ID:TQI/XWNo◆ JavaScript Garden (ja)
http://bonsaiden.github.com/JavaScript-Garden/ja/
◆ JSON (JavaScript Object Notation)
http://www.json.org/json-ja.html
■諸注意
vol.115でlodashを不必要に推奨して啓蒙する行為が多く確認されており、ライブラリ系の質問はvol.116から禁止されました。
vol.115,116ではライブラリ禁止する発言が見られた直後にライブラリを許可する意図で次スレを立てる行為が確認されています。
本スレッドでライブラリ許可を求める発言が確認された場合は不要な争いを避ける為、スルーすることを推奨します。
ライブラリの質問はライブラリスレへ誘導し、誘導行為への反論はスルーしてください。
しかも連投規制食らったまま5個目を忘れてた
0008デフォルトの名無しさん
2015/04/22(水) 16:09:06.24ID:iwbaaLY9いや、もういらねぇよそんなテンプレ。
誰も読んでないし、読む気もしないし。
0009デフォルトの名無しさん
2015/04/22(水) 16:17:58.88ID:oUgI0BBb/ ̄ l | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
■■-っ < んなーこたーない
´∀`/ \__________
__/|Y/\.
Ё|__ | / |
| У.. |
0010デフォルトの名無しさん
2015/04/22(水) 17:00:38.11ID:xopYwg3OHP板にあるスレのテンプレだしな
0011デフォルトの名無しさん
2015/04/22(水) 18:00:14.69ID:sdnJBf1elodash, あなたが既に使っているJavaScriptライブラリ
http://www.infoq.com/jp/news/2015/04/lodash-utility-library
> JavaScriptユーティリティライブラリのlodashがバージョン3.5に達して,
> npmパッケージリポジトリの中で最も多く参照されるライブラリになった。
> もはや代用品などではなく,信頼できる選択肢のひとつだ。
0012デフォルトの名無しさん
2015/04/22(水) 18:22:43.13ID:lQwgm9jn0013デフォルトの名無しさん
2015/04/22(水) 18:54:54.84ID:hD+i2F7GWeb制作板からコピペするならライブラリスレでやればいいのに
0014デフォルトの名無しさん
2015/04/23(木) 08:04:33.64ID:MOJZs/rDろくなことしねぇな。ライブラリ馬鹿は。
そんなにオナニー見て欲しいのかね。質問者はそんなもの期待していないのに。
0015デフォルトの名無しさん
2015/04/23(木) 11:56:07.65ID:RLLS8SFj質問者が何を期待しているかなんかわかるはずがないだろ。
0016デフォルトの名無しさん
2015/04/23(木) 12:18:02.71ID:MOJZs/rD失せろライブラリ馬鹿。
0017デフォルトの名無しさん
2015/04/23(木) 12:35:20.77ID:j3fI+4i+0018名無しのプログラマー
2015/04/23(木) 20:48:28.22ID:tP06eUm00019デフォルトの名無しさん
2015/04/23(木) 20:49:22.72ID:RLLS8SFj痛い所つかれたからって
キレルなよw
0020デフォルトの名無しさん
2015/04/23(木) 22:39:53.24ID:ggn/ga9m人が読めなくても構わないレベルまで落ちてきてるし
0021デフォルトの名無しさん
2015/04/23(木) 22:47:06.65ID:o7dMQAWl0022デフォルトの名無しさん
2015/04/23(木) 23:40:57.87ID:ggn/ga9mトランスレータはもちろん
asm.jsなどコンパイラも出てきてるだろ
0023デフォルトの名無しさん
2015/04/24(金) 08:30:44.51ID:5wjekFJo普通は仕様で決まると思うが、実装を出した理由は如何に?
asm.js の普及率はJavaScriptに影響する程のものなのか?
0024デフォルトの名無しさん
2015/04/29(水) 01:49:58.38ID:UaqR1ge/今はライブラリ馬鹿と言うのか。
0025デフォルトの名無しさん
2015/04/29(水) 08:51:50.03ID:AtVl8T9uライブラリ使って勝手に回答する奴を馬鹿以外になんと呼べば良いのか。
質問スレッドに来るような奴らは、そもそも初心者なのであって、ライブラリ
で書いて回答し、自分に酔ってるような
まぬけの三流プログラマ
は馬鹿そのものだろww
C#で言えば、解答者が質問者無視して、勝手にラムダ式で書いてみたり、
頼みもしないコンストラクタを用意してこう書くべきだなんて言ってるような
もの。
標準で実現できるのだから標準で書くのがこの手のコミュニティの原則だ。
海外でも同じ。なのに2chの専門板はww そりゃ海外から陰湿なオタクの
集まりって揶揄されるわけだ。
0026デフォルトの名無しさん
2015/04/29(水) 08:51:58.72ID:X/8/xdqx0027デフォルトの名無しさん
2015/04/29(水) 09:12:52.25ID:AtVl8T9uHTML5 + CSS + JavaScriptでアプリで検索すればいろいろ手段が
出てくるだろうよ。
Visual Studioでも作れるしな。
もはや、ネイティブアプリの時代は終わりを迎えつつあるよ。
0028デフォルトの名無しさん
2015/04/29(水) 10:06:13.38ID:k4chRKqa自分の頭だと「『年』より前に書かれた文字」「『年』と『月』に挟まれた文字」「『月』と『日』に挟まれた文字」を
抜き出してそれぞれ年月日とみなすみたいなやり方しか思いつかないのですが
もっとスマートな方法ないですかね
0029デフォルトの名無しさん
2015/04/29(水) 10:14:34.20ID:AtVl8T9uそういう日付の付け方を辞める。
そもそも、表示用とベースになる日付のデータは分けるのが当たり前ですよ。
まさか、その形式でDBなどに格納してるんですか?
プログラミングの基礎がまるでなってませんね。
0030デフォルトの名無しさん
2015/04/29(水) 10:25:07.67ID:k4chRKqaこの文字列は外部から取得するものなので、その前提は変えられないんですよ
0031デフォルトの名無しさん
2015/04/29(水) 11:17:08.00ID:240jFMt2普通に正規表現使って分解してDate型作る、正攻法じゃダメなの?
0032デフォルトの名無しさん
2015/04/29(水) 11:22:08.63ID:AtVl8T9uだから、それがスマートじゃねぇって言ってんだろ。
文章読めない三流が、正攻法とか言ってんじゃねぇよタコw
0033デフォルトの名無しさん
2015/04/29(水) 11:32:37.74ID:240jFMt2じゃあ貴方がその「スマートな」やり方答えてあげては?
0034デフォルトの名無しさん
2015/04/29(水) 11:39:53.21ID:k4chRKqaレスありがとう
正規表現で分解、、よく考えたら数値と数値以外で分解すれば良かったんですね
自分が最初に考えてたソースよりはよっぽどシンプルに書けました
var str = "2015年4月29日(水) 13:00";
var arr = str.split(/\D+/);
var dt = new Date(arr[0] + "/" + arr[1] + "/" + arr[2] + " " + arr[3] + ":" + arr[4] + ":00");
console.log(dt); //Wed Apr 29 2015 13:00:00 GMT+0900 (東京 (標準時))
0035デフォルトの名無しさん
2015/04/29(水) 11:47:47.47ID:5jNnBy90momentjsを使う
http://momentjs.com/
一応これでパースで来た
console.log(moment("2015年4月29日(水) 13:00", 'YYYY年MM月DD日 hh:mm'))
曜日の指定はやらなかったが(なぜか)動いている。
たぶん、水を水曜日としみてなしてちゃんと解析し
不正な文字が入ったらinvalidにするとかちゃんとやるなら
localeかCustomizeの設定が必要になるはず。
http://momentjs.com/docs/#/i18n/
http://momentjs.com/docs/#/customization/
0036デフォルトの名無しさん
2015/04/29(水) 13:21:48.68ID:i8bdmTNt通りすがりだけど
var str = '2015年4月29日(水) 13:00';
var dt = Date.parse(str.replace(/[年月日]/g,'/').replace(/\([日月火水木金土]\)/,''));
console.log(new Date(dt).toLocaleString());
// 2015/4/29 13:00:00
俺はjavascriptに詳しくないから、細かいところに問題があるかもしれないけど、
見た目動けばいいのならこれでいい。
javascript にはDateTime構造体はなく、変換はお手軽に出来るから、
数値型でもっていた方が取り回ししやすい。
そして>>31の指摘通り、他のjavascriptスレも含めて、雰囲気がおかしい。
0037デフォルトの名無しさん
2015/04/29(水) 14:02:41.00ID:i8bdmTNt日曜日、月曜日だとバグるからこれで。
replaceの順番を入れ替えてある。
var str = '2015年4月29日(水) 13:00';
var dt = Date.parse(str.replace(/\([日月火水木金土]\)/,'').replace(/[年月日]/g,'/'));
console.log(new Date(dt).toLocaleString());
// 2015/4/29 13:00:00
0038デフォルトの名無しさん
2015/04/29(水) 17:13:19.14ID:ei5YAMam0039デフォルトの名無しさん
2015/04/29(水) 17:26:46.67ID:ei5YAMamつまり月日は必ず0先行2桁で。
日時属性があるデータなんて少なからぬ場面でCSV化するだろう。後でADOに処理させる時にデータ型は文字列オンリーなので、ソートに支障なきよう桁を揃えておくのが定石かと思う。
あと、おまえら正規表現がオリジナルすぎてびっくり。
日時なんて、ごくごく簡単に、match(/\d+/g) の戻り値の配列でやるんじゃねえの?
0040デフォルトの名無しさん
2015/04/29(水) 18:23:52.12ID:OOEft19h0041デフォルトの名無しさん
2015/04/29(水) 18:47:25.04ID:5jNnBy90>>39
> あと、おまえら正規表現がオリジナルすぎてびっくり。
> 日時なんて、ごくごく簡単に、match(/\d+/g) の戻り値の配列でやるんじゃねえの?
それはお前オリジナルだろ?
違うというのなら、オリジナルではないという証拠を書いてくれ
0042質問
2015/04/30(木) 16:54:41.94ID:YotAoLtTWebページ側で用意されているたくさんのフォームに、csvなどから一括で値を入力したいのです
できればラジオボタンなども操作したいため、スクリプトの形で記述できると助かります
0043デフォルトの名無しさん
2015/04/30(木) 17:07:23.85ID:bhA6qPWK0044質問
2015/04/30(木) 17:26:16.95ID:YotAoLtTやってみます
0045デフォルトの名無しさん
2015/05/01(金) 21:03:56.08ID:k6ZOfYKOttp://neue.cc/2010/05/24_260.html
を参考にファイル→新規作成→Webサイト→ASP.NET 空のWebサイトを選び、
ソリューションを右クリックから新しい項目の追加でHTMLページを追加しました。
とりあえずそのままデバッグでHTMLのページが表示されるはずだと思い、Internet Explorerを選択してデバッグを開始しましたが以下のエラーが出ます。
>HTTP エラー 403.14 - Forbidden
>
>Web サーバーは、このディレクトリの内容の一覧を表示しないように構成されています。
IEの、「スクリプトのデバッグを使用しない」のチェックは外してあります。
アドレスがhttp://localhost:53466/になっているので、サーバーを動かしていることが前提なのでしょうか?
でもサーバーを動かすにしても該当ディレクトリに置く必要があるはずだし、
どこかで大きな間違いをしている気がするんですが・・・
0046デフォルトの名無しさん
2015/05/01(金) 22:02:13.15ID:k6ZOfYKOコントロールパネルのプログラムと機能からIISを有効化したらlocalhostが表示される(バージョン表示はない)
だけどvisual studio 2013のデバッグは同じエラーが表示されたままだ
0047デフォルトの名無しさん
2015/05/01(金) 22:21:46.13ID:k6ZOfYKO新しい項目の追加で右クリックする場所が間違っていたようです
0048デフォルトの名無しさん
2015/05/02(土) 09:04:15.48ID:pz2OiV6C0049デフォルトの名無しさん
2015/05/02(土) 13:34:21.30ID:eE6530td0050デフォルトの名無しさん
2015/05/15(金) 13:09:24.27ID:tYsnvpejC++やC#じゃないとだめなこともあるのかな
0051デフォルトの名無しさん
2015/05/15(金) 13:29:34.44ID:WcwFSYk50052デフォルトの名無しさん
2015/05/15(金) 14:16:51.26ID:B4UGt06z該当する構造体や .dll について隅々まで精読して調べて正しく動作させるまで慣れ次第で数時間から数週間かかるだろうな。
つうかこんな普通の手順が通用するかどうかさえ怪しい。
元も子もない話になるがvc++使えって結論になる。
0053デフォルトの名無しさん
2015/05/15(金) 14:45:48.66ID:Itot55/00054デフォルトの名無しさん
2015/05/15(金) 15:15:46.81ID:R8v75GbnWebページのスクロールバーを固定するスクリプトをこのページ(http://allabout.co.jp/gm/gc/446230/)を参考にして作ったのですが、
「本文のところが隠れて見えない場合がある」と指摘されたので、
ボタンを押せばスクロールバーの固定を解除できるようにしたいと考えています。
しかし、ネットで調べたのですが、「押して実行する」ならいくつもあるのですが、
押して停止や無効化させるというのは見つかりませんでした。
どなたかボタンひとつで有効無効を切り替えるスイッチを配置する方法を教えていただけないでしょうか?
よろしくお願いします。
下記が使用しているスクリプトと実行箇所の内容です。
0055デフォルトの名無しさん
2015/05/15(金) 15:16:34.83ID:R8v75Gbn<script type="text/javascript">
// ページの読み込みが完了してから実行
$(function() {
// 途中から固定したいボックスの情報を得る
var navBox = $("#fixedNavi");
var navOst = navBox.offset().top;
// スクロールされた際に実行
$(window).scroll( function() {
// 現在のスクロール位置と、固定したいボックスの位置を比較
if( $(window).scrollTop() > navOst ) {
// 固定用のclassを付加
navBox.addClass("fixBox");
}
else {
// 固定用のclassを削除
navBox.removeClass("fixBox");
}
});
});
</script>
<div id="fixedNavi">
〜サイドメニュー〜
</div>
0056デフォルトの名無しさん
2015/05/15(金) 15:26:44.47ID:c+bvCC5H置いていかれてる感じ
0057デフォルトの名無しさん
2015/05/15(金) 15:33:17.91ID:c+bvCC5H大域変数 var scrollEnable = true; を設け、ボタンを押すとそれがfalse/trueと逐次反転するようにする
scrollTopのif文に && !scrollEnable とでも追加
合わせてボタンを押した際にclassの追加、削除もやると良し
0058デフォルトの名無しさん
2015/05/15(金) 15:40:20.89ID:Itot55/0「押して実行する」もののサンプルがいくつもあるならその辺は大丈夫だよね
次からはなるべくテンプレも読んでね
JavaScript ライブラリ総合質問所 vol.4
http://peace.2ch.net/test/read.cgi/hp/1400834117/
0059デフォルトの名無しさん
2015/05/16(土) 01:39:13.60ID:+UC07Y5Wその前に、>>55のコードは無駄があるので先に綺麗にしておく。
$(function() {
$(window).scroll( function() {
var enabled = $(this).scrollTop() > $("#fixedNavi").top;
navBox.toggleClass("fixBox", enabled);
}
});
まず見た目の話なので、クラスを使う。
ボタンが押された時に、bodyにクラスをつけたり外したりする。
$('#btn').click(function() {
$('body').toggleClass('scroll-bar-fixed');
});
fixBoxクラスの有無でCSSでスクロールバーの固定を行っていると思うが、
あとはCSSをちょこっと書き換えて、
fixBox { 省略 } // スクロールバーの固定解除モード
scroll-bar-fixed fixBox { 省略 } // スクロールバーの固定モード
のような感じで制御できる。
重要なのは、JavaScriptではクラスを使った"モード"の変移のみを行い、
それによって変わる見た目は、CSSを使う言うこと。
これをしないとJavaScriptのコードがすぐに複雑になってしまう。
0060デフォルトの名無しさん
2015/05/16(土) 01:41:23.31ID:+UC07Y5Wまあ適当に修正してくれ。
0061デフォルトの名無しさん
2015/05/16(土) 01:43:39.73ID:+UC07Y5W$(function() {
$(window).scroll( function() {
var navBox = $("#fixedNavi");
var enabled = $(this).scrollTop() > navBox.offset().top;
navBox.toggleClass("fixBox", enabled);
}
});
0062デフォルトの名無しさん
2015/05/16(土) 10:56:36.61ID:l5FsiBnw今朝書き込みを見つけ、早速辞書を引きつつ試行錯誤してみたのですが、
JavaScriptが素人な私の力不足のため上手い具合に動いてくれませんでした。
せっかくお返事を頂いたのに申し訳な気持ちでいっぱいです。
テンプレートのCSSが
.fixBox {
position: fixed;
top: 0px;
}
こんな感じでお返事内容に合わせて書き直すだけなので多分CSSの方は問題無いと思います。
なので、JavaScript本体のところに問題があると思っているのですがどこがどう間違っているのかわからな状態です。
本当にすいません。
0063デフォルトの名無しさん
2015/05/16(土) 13:07:55.59ID:+UC07Y5W$(function() {
var navBox = $("#fixedNavi");
var navTop = navBox.offset().top;
$(window).scroll(function() {
var enabled = $(this).scrollTop() > navTop;
navBox.toggleClass("fixBox", enabled);
});
$('#btn').click(function() {
$('body').toggleClass('scroll-bar-fixed');
});
});
.scroll-bar-fixed .fixBox {
position: fixed;
top: 0px;
}
<div id="fixedNavi">
〜サイドメニュー〜
</div>
<button id="btn">ボタン</button>
0064デフォルトの名無しさん
2015/05/16(土) 15:34:34.10ID:TZWgpp9hjQueryソースコードもjQueryユーザーコードも恐るべき循環お気楽コードだから、特にへたったバッテリーの非最新スマホにはブラクラ以上の脅威だから。
どうしてjQuery厨は全く不要な循環ばかり書くのだろうか。悪意を持って嫌がらせをしているとしか考えられない。
0065デフォルトの名無しさん
2015/05/16(土) 15:40:22.19ID:P7OgM9Ju0066デフォルトの名無しさん
2015/05/16(土) 20:07:10.46ID:l5FsiBnw何から何まですみません。
上手く動いてくれています。
ありがとうございました。
失礼致します。
本当にありがとうございました。
0067デフォルトの名無しさん
2015/05/17(日) 03:21:54.35ID:1BuEq8g0これがIEだとページジャンプするのにクロムだとしないのですが、仕様ですか?
というか最近JavaScriptの学習を始めて、やたらIEと他のブラウザで動作が違うような
ことがあるみたいで、こんなんでマルチブラウザ対応のコーディングなんてできるのかと
心配になってきましたが……それほど心配することでもないのですか?
0068デフォルトの名無しさん
2015/05/17(日) 05:58:33.45ID:6hxjNt+oマルチブラウザ対応で作るなら、jQuery、lodashあたりを使ったほうがいいよ。
フレームワークを使うって手もあるけど、
こっちは新しいブラウザしか対応していないことが多い。
で、IEと他のブラウザで動作が違う?
最新のバージョンであれば殆ど変わらないと思うが?
jQuery、lodash使えっていうのは、古いブラウザや
特定のブラウザにあるマイナーなバグ対策。
0069デフォルトの名無しさん
2015/05/17(日) 06:33:20.08ID:8cwJfqPkwindow.location は関数ではありません。
仕様を知りたいなら仕様書を読みましょう。
https://html.spec.whatwg.org/multipage/browsers.html#the-location-interface
> こんなんでマルチブラウザ対応のコーディングなんてできるのかと
仕様書を読んで仕様通りにコーディングすればそれ程、困ることはありません。
仕様の実装度合いに多少差異はありますが、調べれば分かるないようですし、慣れれば大体覚えます。
0070デフォルトの名無しさん
2015/05/17(日) 06:33:38.14ID:1BuEq8g0レスありがとうございます。
jQueryはやっぱり必須なんですかね。
ちなみに他に気づいたのだと、IEの場合document.linksがうまくいきませんでしたね。
getElementById使えば問題ないんですけどね。
0071デフォルトの名無しさん
2015/05/17(日) 06:37:13.69ID:1BuEq8g0レスありがとうございます。
杞憂のようでしたね。
0072デフォルトの名無しさん
2015/05/17(日) 07:09:44.53ID:8cwJfqPk> IEの場合document.linksがうまくいきませんでしたね。
IE のバージョンいくつで document.links のどんな機能が期待通りに動作しなかったのでしょう?
getElementById と比較するところから想像するに document.links.namedItem なんですかね。
http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-7068919
http://jsfiddle.net/atqLjqny/2/
0073デフォルトの名無しさん
2015/05/17(日) 07:21:32.05ID:1BuEq8g0<a id="hoge" href="http://google.com"> ... </a>
このようなタグからURLを抜き出すのに
url = document.links.hoge.href
はIE11だとうまくいきませんでした。クロムはできました。
代わりに
url = document.getElementById("hoge").href
にすると、IE11を含めた主要ブラウザで動くようです。
0074デフォルトの名無しさん
2015/05/17(日) 07:57:13.51ID:8cwJfqPk> url = document.links.hoge.href はIE11だとうまくいきませんでした。クロムはできました。
>>72で出した DOM Level 2 HTML の仕様書は読んでいるでしょうか?
その仕様は DOM Level 2 HTML では策定されていません。
HTMLCollection[name] による参照は DOM 4 で標準化されました。
比較的新しい仕様である DOM 4 を実装していないブラウザでは機能しません。
http://www.w3.org/TR/domcore/#interface-htmlcollection
つまり、DOM Level 2 HTML の範囲内で実装できる document.links.namedItem を提案しているのですが、それでも動作しませんか?
> url = document.getElementById("hoge").href にすると、IE11を含めた主要ブラウザで動くようです。
さすがに getElementById は DOM Level 2 規定で古くからある仕様なので動作します。
http://www.y-adagio.com/public/standards/tr_dom2_core/core.html#i-Document
仕様には古い仕様と新しい仕様があり、新しい仕様は古いブラウザでは動作しません。
仕様の勧告日、各ブラウザの仕様の実装度合いを予め調べておくことが重要です。
それと仕様書通りに書くことですね。
ブラウザの独自拡張コードを使ったら全てのブラウザで動作しませんから。
0075デフォルトの名無しさん
2015/05/17(日) 08:33:40.08ID:1BuEq8g0namedItemを使うとIE11でもいけました。
勉強になりました、どうもです。
0076デフォルトの名無しさん
2015/05/17(日) 09:43:31.86ID:CzRQDZeG↓こういう本もおすすめ。
JavaScriptパターン ―優れたアプリケーションのための作法
Stoyan Stefanov (著), 豊福 剛 (翻訳)
英語版なら、電子書籍が安い。
0077デフォルトの名無しさん
2015/05/17(日) 10:24:27.29ID:1BuEq8g0どうもです。
オライリーには他にも開眼やGood Partsなど、良い本が揃ってるようですね。
今読んでるサイ本を終えたら、物色してみます。
0078デフォルトの名無しさん
2015/05/17(日) 13:58:09.95ID:6hxjNt+oわからないからって適当なサイトをググって
それをコピペしてるでしょ?
残念ながら、古い書き方をしているページがたくさんあって参考にならないよ。
>>74みたいにDOMのバージョンまで考えて書いてるページが少ない。
標準の書き方だけをしていれば、たしかに最近のブラウザでは
きちんと動くんだけど、なにが標準か分からない。
標準が分かったとしても、それをブラウザが実装しているかどうか調べないといけない。
そこでjQueryなんだよ。jQueryならブラウザのバージョンの違いはほとんど無視できる。
jQueryのバージョンを気にしないといけないことが少しだけあるが、
IE6以降のブラウザで同じように動くことが保証されている。
あと多くの場合jQueryを使ったほうが短くなる。
url = document.links.hoge.href
url = $('#hoge').prop('href')
その書き方はDOM標準なのか? 各ブラウザの実装がどうなっているか?を
調べるのとjQueryを勉強するを比べたら、jQueryを勉強するほうが
はるかにメリットが多いよ。
0079デフォルトの名無しさん
2015/05/17(日) 14:05:25.39ID:6hxjNt+ojQueryだとこれがいいよ。
コアjQuery+プラグイン/jQuery UI 開発実践技法
http://www.amazon.co.jp/dp/4798124281/
あとjQueryの本ではないがこれも良い。
JavaScriptで学ぶ関数型プログラミング
http://www.amazon.co.jp/dp/4873116600
jQueryもlodash(Underscore)も関数型プログラミングを
取り入れたライブラリでね。これを使うと短いコーディングで
わかりやすくて不具合が起きにくいコードを書くことができる。
0080デフォルトの名無しさん
2015/05/17(日) 15:18:03.01ID:aj4oIMqkたとえば$はhaskellにインスパイアされて云々などとほざく馬鹿がたまにいるがリアルタイムで見てきた者たちはそれが後付けの妄言だと知っている。
JSを何かにカテゴライズしたければOOPとするのがベストだ。
JSで関数型風に糞コードを書いたら読み難くなるだけ。
俺がそのオライリーの本が命令型に見えるほど狂ったコードを書いて引き継いだら低学歴の後継者は全く理解できずにjQueryで作り直していた。かなり慣れるまでとにかく分かりにくいものらしいから気取って関数型風に書くのは有害だろうな。
0081デフォルトの名無しさん
2015/05/17(日) 16:03:18.56ID:aj4oIMqk逆に関数型風を極力排除する努力の成果物であるという寒々しい現実を
何らかの代表的な例で示してやらなきゃ自力では解決出来ないだろうな。
jQuery厨はEventTargetを起点にMSXMLのnextNode()風な探索をしないよな。
そもそも脳足りんだから出来ないから。
そもそもEventListener外部にそれ用の「素晴らしい」メソッドか何かが提供してあるから。
jQuery厨は馬鹿なのでそれら理由は全て当てはまるだろう。
例えばチェックボックスで意思確認をして後続するサブミットボタンを有効にしたい時、
狂った関数型風にそのボタンへの参照値をidempotentに書けばこうなる。
(f => ((b = n => !n ? null : n.nextElementSibling || b(n.parentNode))
=> ((a = n => !n ? null : n.firstElementChild || n.nextElementSibling || b(n.parentNode))
=> ((nn = n => !n ? null : f(n) ? n : nn(a(n))) => nn)())())())(n => n.type == 'submit')(e.target)
分かり易くないというか分かり難い、慣れて暗記してしまっている作者の俺を除いて。
繰り返す。こういうのを排除した成果物がjQueryだ。CSSセレクターを読み書き出来る知能までしか要求しないから誰でも使える。
0082デフォルトの名無しさん
2015/05/17(日) 17:17:57.04ID:X736iQ2v詳しい解説ありがとう。
0083デフォルトの名無しさん
2015/05/17(日) 18:16:12.96ID:6hxjNt+oなんかファビョてるなw
jQueryと関数型プログラミングの関係はググればすぐわかるから
レスする必要はないとして、どうでもいいところにツッコミを入れようw
> JSで関数型風に糞コードを書いたら読み難くなるだけ。
これ、実は詭弁のテクニックって気づいた?
どこがと言うと、わざわざ「糞コード」と書いてある所。
どんな言語をつかっても良いコードと糞コード両方かける。
だから
JSで関数型風に良いコードをかけるのに、
糞コードと限定し、糞コード=糞なコード・・・反論できない(当たり前)
という理屈を持ちだして
JSで関数型風に書いたら読みにくくなるとミスリードさせている。
読みにくくなる原因は糞コードであって、JSで関数型風とは無関係なんだよ。
0084デフォルトの名無しさん
2015/05/17(日) 18:24:46.36ID:6hxjNt+o>>81のコードが見にくいのは、>>81が言っているように
> 「素晴らしい」メソッドか
が、JavaScriptだけでは提供されていないから。
jQueryを使うことで、それが提供されるから
関数型プログラミングでもわかりやすくなる。
という話なのさ。
0085デフォルトの名無しさん
2015/05/17(日) 18:29:05.43ID:6hxjNt+o一応補足しておこう。JavaScriptにもわずかに提供されている。
forEachメソッドなどがそう。
だけど本当にわずかだし、DOMに関しては提供されていない。
DOMにはforEachメソッドがないから、JavaScriptのforEachを間借りすることになる。
その分コードは見難くなるわけよ。
本来JavaScriptには関数型プログラミングをする能力はあったんだが、
それを活かすためのメソッドが用意されていなかった。
jQueryやlodashはそのメソッドを完備することで、
はれてJavaScriptで関数型言語の良質なコードを書けるようになった。
0086デフォルトの名無しさん
2015/05/17(日) 20:54:47.89ID:Cm/UZXwW0087デフォルトの名無しさん
2015/05/17(日) 21:04:27.33ID:0Mm3LM9e0088デフォルトの名無しさん
2015/05/18(月) 05:47:17.18ID:ezOKhhiH0089デフォルトの名無しさん
2015/05/18(月) 06:55:12.35ID:UwQvP8mG0090デフォルトの名無しさん
2015/05/18(月) 11:33:11.93ID:xWeJ7/LwID変えての自作自演の可能性が高いですなw
0091デフォルトの名無しさん
2015/05/19(火) 06:53:30.28ID:YaWtxR1V0092デフォルトの名無しさん
2015/05/20(水) 03:30:39.10ID:EuT6yuDOリッチなwebページを作れるようになりたいんだが、どのフレームワークだと入りやすいかな?
あと分かり易い入門書があれば教えて欲しい、オライリーでおk?
0093デフォルトの名無しさん
2015/05/20(水) 04:41:13.12ID:Lg9Gjfeh0094デフォルトの名無しさん
2015/05/20(水) 08:16:36.28ID:7dq/qgPNそれにフレームワーク覚えるって、また新しい言語勉強するような感覚でめんどいし。
自分でフレームワーク作れるくらいになりたい。
PHPでは作った。
0095デフォルトの名無しさん
2015/05/20(水) 15:19:04.19ID:UKJ+96Qhしてるならオススメ
0096デフォルトの名無しさん
2015/05/20(水) 22:56:17.11ID:Iqf+D3Jd一応javaとCはそれなりに扱える
jsは苦手意識があってなんかなぁ
フレームワークなしでやっていく方がいいのk
0097デフォルトの名無しさん
2015/05/23(土) 00:08:30.89ID:YHGtlbT30098デフォルトの名無しさん
2015/05/24(日) 09:50:03.68ID:gEBAoLvh0099デフォルトの名無しさん
2015/05/28(木) 12:58:47.15ID:mGxcoe2Eちょっとでもスクロールすると元に戻ってしまう。
$(window).scroll(function());の部分を無効化させたいのだが、
いい方法はあるだろうか?
$(window).scroll(function());をifで囲ってボタンで操作するというのも考えたが
書き方が悪いせいかうまく動かない・・・
きっとこんな感じなんだと思うが、もうわかんない・・・
$(function() {
var navBox = $("#fixedNavi");
var navTop = navBox.offset().top;
var swicth = ture;
if文で囲う・ボタンが押されたら条件をfalseにして無効化する---------
$(window).scroll(function() {
var enabled = $(this).scrollTop() > navTop;
navBox.toggleClass("fixBox", enabled);
});
if文終わり-------------
$('#btn').click(function() {
if文を無効化するためswicthにfalseを代入する
});
});
0100デフォルトの名無しさん
2015/06/02(火) 23:01:43.46ID:zeYZnMnE0101デフォルトの名無しさん
2015/06/03(水) 08:43:19.37ID:tNzh/NJ7具体的なコードを書いてください。
実際に動くコードを。
0102デフォルトの名無しさん
2015/06/03(水) 21:39:23.96ID:9mg+Lksd0103デフォルトの名無しさん
2015/06/03(水) 21:58:08.76ID:tNzh/NJ7いいえ、ただの自治厨ですw
俺は質問者じゃない。
そういうだめなコード(書けばわかる)を
広めるんじゃないって話をしてるだけ。
0104デフォルトの名無しさん
2015/06/04(木) 01:29:28.11ID:moGL9hHI0105デフォルトの名無しさん
2015/06/04(木) 05:11:44.65ID:p4ZTcGym具体的に駄目な理由を指摘したほうが多くの為になるんじゃないか?
>>100の問題点は「stickyをpolyfillでtoggleする手段をどうするか」って事ぐらいか
<style>#hoge { position: sticky; }</style> にでもしてpolyfillでstyle要素のノード監視をしておけば実装できそうだな
0106デフォルトの名無しさん
2015/06/04(木) 13:55:43.46ID:3Pw+dCJh0107デフォルトの名無しさん
2015/06/04(木) 14:43:23.18ID:6FSffG0uなおさら使いもんにならねーゴミだな
0108デフォルトの名無しさん
2015/06/04(木) 22:39:26.61ID:sc3w8p67scriptタグで外部のjsファイルを読み込むとき、ベースとなるURLはどうなるの?何か条件で変わったりする?
0109デフォルトの名無しさん
2015/06/04(木) 23:03:15.45ID:PemmKaGKここはJavaScriptのスレ。
すれ違いだ
0110デフォルトの名無しさん
2015/06/05(金) 00:18:31.10ID:rGJKLW3dマウスイベント内のカーソル座標で判断してもいいし
HTMLのMAP要素からオンマウスしたり、そもそも画像じゃなくてSVGにしたり
こういうのはWeb制作板で聞いた方がいい
>>108
どこから読み込んでも実行したサイトのやつになる
0111デフォルトの名無しさん
2015/06/05(金) 19:42:46.35ID:xp4LuS6y0112デフォルトの名無しさん
2015/06/05(金) 22:08:57.54ID:2Cuhz6TKごめん、文章がおかしかったかも。
デフォルトで読むディレクトリってどこになるか気になってる。
というのも、(アプリのホームディレクトリ)/public/jsのような構造にしてたらpublicから読み込まれてて疑問に感じたのがはじまりなんだ。(普通は読み込む.htmlファイルのディレクトリからの相対パスを指定すべきじゃないのかと思ってた)
0113デフォルトの名無しさん
2015/06/06(土) 10:45:03.29ID:hveEv/M10114デフォルトの名無しさん
2015/06/06(土) 11:20:29.40ID:KMNvqcU5ajaxでpostじゃ駄目?
0115デフォルトの名無しさん
2015/06/06(土) 20:04:42.59ID:d4WohiIR0116デフォルトの名無しさん
2015/06/07(日) 00:06:08.01ID:CEtgcriZある既存のサイトへの入力を自動化するためにjavascriptを使いたくて
けれど送信したらページが変わってjavascriptが終了してしまって
どうにかならないものかなって
0117デフォルトの名無しさん
2015/06/07(日) 00:07:30.61ID:yTv0X04Z0118デフォルトの名無しさん
2015/06/07(日) 06:43:09.33ID:ohZIkVP1そんなん普通に出来たらXSSし放題だし
Greasemonkeyとか特権ページ使う
というかお前らWeb関連の質問は板違いだぞ?
http://peace.2ch.net/test/read.cgi/hp/1429873274/l50
0119デフォルトの名無しさん
2015/06/07(日) 06:49:43.73ID:ohZIkVP10120デフォルトの名無しさん
2015/06/07(日) 10:51:06.68ID:kIG4ohLy>>118
むしろこのスレが板違いなんだが
0121デフォルトの名無しさん
2015/06/08(月) 02:28:15.78ID:Ipeb2BnC0122デフォルトの名無しさん
2015/06/10(水) 08:45:25.83ID:j5xihkfR文字列の中にあるクオートはエスケープしたい
すでにエスケープされてるクオートはエスケープしたくない
どうしたらいい?
正規表現で後読みができればできそうな気がしたんだけど
0123デフォルトの名無しさん
2015/06/10(水) 09:12:41.84ID:7XQM9Exq0124デフォルトの名無しさん
2015/06/10(水) 09:29:27.20ID:mjuiu2VR0125デフォルトの名無しさん
2015/06/10(水) 09:53:16.47ID:2Yur50Zd既に文字列としてあるなら
1.replaceでエスケープされてないクオートをエスケープ
2.クオート+string+クオート
でいけんじゃない
0126デフォルトの名無しさん
2015/06/10(水) 17:54:58.75ID:B813HKfZ「\'」も「'」も、「\'」に置換する、と考えればできる
var str = "I'm home. I\\'m home.";
str = "'" + str.replace(/\\?'/g, "\\'") + "'";
console.log(str); // "'I\'m home. I\'m home.'"
ところで用途は知らんが、"\n"⇒"\\n"とか"\r"⇒"\\r"とかは変換しなくていいのか?
全部エスケープしてちゃんとした文字列リテラルにしたいなら、JSON.stringify( str ) を使うべし
0127デフォルトの名無しさん
2015/06/13(土) 15:53:55.49ID:l9QW3Z+P0128デフォルトの名無しさん
2015/06/13(土) 19:05:05.27ID:PpDCr+eJ試せばすぐにわかるのではなくて?
0129デフォルトの名無しさん
2015/06/21(日) 23:20:38.80ID:1kI6SICXfunction fn(a, b){ ... };
が有ったとして、呼び出しを
fn(a='あああ', b=777);
みたいな書き方って出来ませんか?
0130デフォルトの名無しさん
2015/06/22(月) 00:37:55.91ID:Lv8A7rmgfn({a:'あああ', b:777}) みたいにするとか
0131デフォルトの名無しさん
2015/06/24(水) 11:38:32.35ID:pGWNxZlD自作や他作のGreasemonkeyスクリプトで、
firefoxのコンソールに
「警告: 関数外部での return は非推奨なので、いつかは使えなくなる可能性があります。」
と吐かれることがあるのですが、その法則がよく分かりません。
どういう書きかたが非推奨なのか、ご教授いただけませんか?
0132デフォルトの名無しさん
2015/06/24(水) 13:04:40.78ID:psBp8yd8ものすごく大雑把に言うと
(function(w){
コード
})(window);
こういう形式以外で書くとそのワーニングが出る
0133デフォルトの名無しさん
2015/06/24(水) 13:23:56.45ID:uF/DasIW0134デフォルトの名無しさん
2015/06/24(水) 15:12:36.34ID:pGWNxZlDなるほど、自分でも弄ってみて何となく分かりました。
Greasemonkeyではブロックの一番外側、
囲まれていない部分でreturnするなってことですね。
お早い回答ありがとうございました。
0135デフォルトの名無しさん
2015/06/24(水) 21:40:15.14ID:uopmDJvI0136デフォルトの名無しさん
2015/06/24(水) 21:55:06.36ID:uF/DasIW0137デフォルトの名無しさん
2015/06/24(水) 23:22:36.33ID:gZGnz25T0138デフォルトの名無しさん
2015/06/25(木) 09:37:57.55ID:g5y8B0xSreturn 文を FunctionBody 以外に置くのは文法違反だ
ただしGMは上記エラーをキャッチして匿名関数で囲い直して再実行するようになっている
恐らく昔は最初から匿名関数で囲っていたんだろう
0139デフォルトの名無しさん
2015/07/14(火) 03:20:07.12ID:JCIKiH2YGreasemonkeyってJQueryの便利なプラグインって使えるんですか?
0140デフォルトの名無しさん
2015/07/14(火) 22:26:10.42ID:mAVBSVq8ライセンス次第では使えるんじゃない?
0141デフォルトの名無しさん
2015/07/17(金) 09:05:28.77ID:jOehEW0Eライセンス関係じゃなくて
例えばjQueryのプラグインを使用する場合
このファイルを此処に配置してね!とかこの階層にこれを置いてね!みたいなパターンの時
Greasemonkey使いはどうやってor何処にそのファイルを設置してるのかなって?
0142デフォルトの名無しさん
2015/07/17(金) 12:40:59.47ID:xU21AM+pスクリプトはuserscript内にベタ書きして他はBase64化するしかないんじゃない
もっともそこまでするならアドオン化したほうがいいと思う
0143デフォルトの名無しさん
2015/07/17(金) 13:31:24.21ID:2DUlvwkL配置すればいいし、問題が有るなら
ソースコードを書き換えればいい。
何も困ることはない
0144デフォルトの名無しさん
2015/07/17(金) 14:27:46.46ID:i4mrEasZオナニー用の回答は勘弁
0145デフォルトの名無しさん
2015/07/17(金) 14:33:37.12ID:vqf+lCetexpect(bdd).equal('super')
能力ないのに無理すること無いよ。
0146デフォルトの名無しさん
2015/07/23(木) 11:10:57.77ID:Yx5p7QBYJavaScriptを使って3Dモデリングソフトを作りたいのですが
可能でしょうか?あとPhotoshopの様なソフトも作りたいと思ってます。
どなたか教えてください。
0147デフォルトの名無しさん
2015/07/23(木) 11:38:00.53ID:Yx5p7QBYすいません。
Windows8です。
よろしくおねがいします。
0148デフォルトの名無しさん
2015/07/23(木) 11:43:39.39ID:GqOFRXaP0149デフォルトの名無しさん
2015/07/23(木) 11:48:28.89ID:Yx5p7QBY既にあると言うのは既に開発者がいるということでしょうか?
できれば自分で開発したいと思ってます。
MAYAとPhotoshopが欲しいのですが、高いのでJavaScriptで
自作したいと考えてます。
JavaScript以外インストールしなくてもできますでしょうか?
0150デフォルトの名無しさん
2015/07/23(木) 14:52:27.42ID:Yx5p7QBY0151デフォルトの名無しさん
2015/07/23(木) 14:52:32.56ID:DH0nynLcJavaScriptをインストールする?
そんな質問する時点で、作るなんて無理無理かたつむり。
まずはフリーソフトを使ったら?
フォトショの代わりにgimpがオススメ。
MAYAの代わりになるフリーソフトは知らんが、探せば絶対ある。
0152デフォルトの名無しさん
2015/07/23(木) 14:55:06.50ID:P0N6qRSqmayaっていくらするんだ?
100万くらい?同等で安いの他に沢山有るだろ。
0153デフォルトの名無しさん
2015/07/23(木) 15:03:20.14ID:GqOFRXaP質問の答はどっちもYESだけど>>151の言ってることが全てだよ
0154デフォルトの名無しさん
2015/07/23(木) 15:09:26.99ID:P0N6qRSq0155デフォルトの名無しさん
2015/07/23(木) 15:30:31.35ID:Yx5p7QBYGIMPはPhotoshopに比べて使いづらいので
使用をやめた経緯があります。
3DソフトもBlenderというフリーソフトを試しましたが
話になりませんでした。
やはり多少手間が掛かっても自作しようと思います。
JavaScript以外インストールしなくても開発が出来るとの事なので安心しました。
おすすめの書籍や、サイトがあれば教えて頂けると幸いです。
0156デフォルトの名無しさん
2015/07/23(木) 15:36:53.45ID:CfJH8He2無理。使いづらいGIMPも超えられないことだろう。
GIMPってオープンソースでないか?
ゼロから作るならこっちを改良したほうがまし。
0157デフォルトの名無しさん
2015/07/23(木) 15:38:54.93ID:P0N6qRSqmayaレベルのものを一人で作るとなると
俺だったら1年は掛かるな。頑張れ
0158デフォルトの名無しさん
2015/07/23(木) 15:43:04.88ID:CfJH8He2その開発期間の生活費、食費、家賃だけでも。
開発のほうが時間もカネも掛かるという本末転倒の結果になるだけ。
買うか、諦めて機能劣化でもフリーか安いやつ探したほうがまし。
0159デフォルトの名無しさん
2015/07/23(木) 15:43:35.24ID:Yx5p7QBYJavaScriptでオープン・ソースを改良する事はかのうでしょうか?
改良の仕方を解説した書籍などはありますか?
>>157
ありがとうございます。
一年くらいは試練だと思って頑張ります。
一年でMAYAクラスのソフトができれば有料化して
公開すれば元は取れそうですね。。。
0160デフォルトの名無しさん
2015/07/23(木) 15:46:45.88ID:CfJH8He2JavaScriptは機械語のネイティブにくらべ相当遅い。
JavaScriptコンパイラから開発していかないと。C/C++やアセンブラのトランスレータでもいいけど。
0161デフォルトの名無しさん
2015/07/23(木) 15:48:44.57ID:Yx5p7QBYアドバイスありがとうございます。
JavaScriptの勉強もかねて自作を考えております。
開発したソフトはシェアウェアとして公開して開発費に当てられればと思います。。
0162デフォルトの名無しさん
2015/07/23(木) 15:51:51.38ID:j7igTf1W1年どころか死ぬまでやっても無理そうな感じ
0163デフォルトの名無しさん
2015/07/23(木) 15:52:15.00ID:Yx5p7QBYJavaScriptはプログラミング言語の中で一番敷居が低いと聞きましたが間違いでしょうか?
無料で始められて敷居も低いJavaScriptが最適と判断しましたが、
おすすめの言語等があれば教えて下さい。
できればフリーでお願いします。
当方パソコン初心者です。
0164デフォルトの名無しさん
2015/07/23(木) 16:26:28.00ID:Yx5p7QBY因みにエクセル三級です。
0165デフォルトの名無しさん
2015/07/23(木) 16:54:25.40ID:P0N6qRSqJavaScriptでもmayaは作れるよ。
動きが遅ければ速いマシンで動かせば良い。それに3DグラフィックのプログラミングがメインだからJavaScriptからOpenglでも呼び出せば、今時の安いグラフィックカードでもそこそこ動くだろ。頑張れ。
0166デフォルトの名無しさん
2015/07/23(木) 18:37:24.13ID:KEVSaEFA企業が複数チームで何年もコミットして開発してきたものを個人で作れねえよバカかてめえ
こういうカスがクラウドソーシングでアホな依頼を出してるんだよな
0167デフォルトの名無しさん
2015/07/23(木) 18:49:51.06ID:CfJH8He2インドでITが盛んな理由をテレビでやってたが、地球上でアメリカの反対に位置していて、
アメリカ人が寝てる間にインド人が引き継いて24時間稼働させるのも一因らしいぞ。池上彰の番組だったか。
たった一人では到底追いつかない。
0168デフォルトの名無しさん
2015/07/23(木) 18:52:33.66ID:CfJH8He2IT産業躍進の理由は、歴史的経緯から英語が公用語の一つとして用いられていることや、伝統的に数学に強い国民性などがよく指摘される。
しかし、もう一つ、意外な理由があるのをご存知?
それは、アメリカとの"地理的な位置関係"。アメリカとインドの間には12時間の時差があり、昼夜がちょうど逆転している。
つまり、アメリカで昼間に行われたソフトの制作作業を、夜にインドが引き継ぐ(その頃インドは昼にあたる)。
今度はインドの技術者が作業を行い、夜(アメリカ時間の朝)にまた送り返す。
この、24時間ノンストップの作業工程を繰り返すことで、開発時間を大幅に短縮することができた。
インドでIT産業が大躍進した背景には、こうした地理的事情も潜んでいたのだ。
http://news.livedoor.com/article/detail/4657272/
0169デフォルトの名無しさん
2015/07/23(木) 19:13:34.13ID:KOl0In97及びその相手をするのはいかがなものか
0170デフォルトの名無しさん
2015/07/23(木) 19:45:37.63ID:FhWClImu0171デフォルトの名無しさん
2015/07/23(木) 20:28:17.10ID:aSNV6wDl0172デフォルトの名無しさん
2015/07/23(木) 22:38:31.05ID:PnybgrquWebGLとasmjsの台頭(というのはまだ早いか)によって、出来そうという領域に突入してるからなあ
0173デフォルトの名無しさん
2015/07/23(木) 23:14:30.67ID:szZOMhQ7まじめに語り始めた人がどこかのスレにいたな。
何か思い出しました。
0174デフォルトの名無しさん
2015/07/24(金) 13:30:59.77ID:TpqFiFGpいたら既に検索エンジンに引っかかってるはずだ
0175デフォルトの名無しさん
2015/07/28(火) 21:45:27.86ID:CqtOJHxeこの記事のコメント欄で
>JavaScript標準のDateは関数型プログラミングのストリームであり、.now()関数の返り値も参照透明ですよ。
と主張してる人が居るんだが(qiitapost氏とchimetorch氏)、これってどうなの?
マジなの?
http://qiita.com/nonstarter/items/2763f5d85f2b8df3b18b#comment-161ab6283ae2d49ff356
0176デフォルトの名無しさん
2015/07/28(火) 23:52:00.84ID:Z/s3EayV0177デフォルトの名無しさん
2015/07/29(水) 13:14:53.46ID:uQ6lKHw20178デフォルトの名無しさん
2015/07/29(水) 20:40:47.45ID:a6rmdmGU参照透過性の齟齬が見られるようにしか見えない
定義を再確認して検証するだけで答えがわかるだろうけど、どこがわからないんだろうね
0179デフォルトの名無しさん
2015/07/30(木) 03:04:51.95ID:RzfbKLmpフレームワークを使って簡単なゲームを作るのですが、フレームワークの入門書のレビューを見ると、
Javascriptの本も必要になるみたいなので、入門はサイトも併用して勉強して、
もうちょい踏み込んだ内容を本で体系的に勉強したいと思います
0180デフォルトの名無しさん
2015/07/30(木) 03:33:35.97ID:9t3Rp0jb0181デフォルトの名無しさん
2015/07/30(木) 04:33:46.95ID:3i+hP11T掌田津耶乃(しょうだ つやの)、2013
開眼!JavaScript、2013、オライリー・ジャパン
この2冊を、この順に読んでみ。
JSが簡単な言語ではないことが、よくわかるw
0182デフォルトの名無しさん
2015/07/30(木) 20:56:39.71ID:8R+I3lmcオライリーやeffectiveみたいな本って中級者が上級者になるために四苦八苦して読むというイメージがありますが、
それほど難しい本ではないのでしょうか?
>>181
読んでみます
JSを極めたいというのは身の程知らずな考えになるので、
趣味でやる分には困らないというレベルになれればいいなと思います
0183デフォルトの名無しさん
2015/07/30(木) 21:03:44.61ID:Gc+8fzul0184デフォルトの名無しさん
2015/07/30(木) 22:34:56.33ID:ZAgoLfu3JSはやめとけ。せめてJK以上にしとけ。
0185デフォルトの名無しさん
2015/08/01(土) 14:17:31.69ID:Aj4A9d0Fブラウザから入力されてyyyyMM(201506)みたいに
区切られてない日付を簡単にDateで扱える方法ある?
そのまま突っ込むと201506年とかになっちゃうから、
2015年06月として扱いたいんだけど。
0186デフォルトの名無しさん
2015/08/01(土) 14:18:14.94ID:DY0kRX1l0187デフォルトの名無しさん
2015/08/01(土) 14:18:31.56ID:YIWvpIHq+ JavaScript の質問用スレッド vol.125 + [転載禁止]&#169;2ch.net
http://peace.2ch.net/test/read.cgi/hp/1436910657/l50
0188デフォルトの名無しさん
2015/08/05(水) 23:33:11.27ID:2Lachul+普通のメソッド呼び出しみたいに同期で値を返して欲しいんだが、どうするのがベターかな
JavaだとFuture.getとかで値がfillされるまで待つみたいなことができるんだがそういう感じの
0189デフォルトの名無しさん
2015/08/05(水) 23:44:23.53ID:+tmhLpOI0190デフォルトの名無しさん
2015/08/05(水) 23:57:58.59ID:2Lachul+やっぱそうなんかなぁ
0191デフォルトの名無しさん
2015/08/06(木) 00:29:17.38ID:9VONu6kLBabel前提にしてasync/await使えば望み通りのことができると思うけど
手間を考えたら俺も>>189に一票入れとく
0192デフォルトの名無しさん
2015/08/06(木) 01:59:42.04ID:sO/WbnI60193デフォルトの名無しさん
2015/08/09(日) 01:20:38.18ID:5j1Jud2Y0194デフォルトの名無しさん
2015/08/09(日) 02:28:32.87ID:75nb70yxっていう構文は何ですか?
0195デフォルトの名無しさん
2015/08/09(日) 10:03:46.48ID:k7/mk2St0196デフォルトの名無しさん
2015/08/11(火) 21:58:12.27ID:oKfEQWGhjQueryの様なプラグインを一切使わずにHTML+JavaScript(+CSS?)だけで作る時に参考になる様なサイトはありませんか?
会社で扱う情報をデータベース化して蓄積した際に閲覧用に使えるのが今のところエクセルだけで、
しかもエクセルで扱うとデータ量が多すぎて表示しきれない(表示できても作業に支障を来すほど重い)ので、
JavaScriptもしくはVBScriptを裏で動かして、都度データを拾って表示するシステムを作りたいのです。
しかし非同期に情報を表示するページの作り方となるとjQueryプラグインかWWWサーバの機能(PHPなど)を利用するものばかりが出てくるので、
WWWサーバも用意出来ず、任意のソフトウェアやプラグインをインストール出来ない状況に合わず困っています。
データベース作りはエクセルVBAで慣れているのですが、蓄積したデータを表示する方法がよく分かっていません。
JSやVBSでHTMLタグ付きのページを自動生成して、それをインラインフレームに読み込ませるとページ遷移になるみたいなので、
一枚のページであるかのように振る舞うものを作りたいという目的に合致しないようです。
以上の状況と目的に合致するような作り方はないでしょうか?
0197デフォルトの名無しさん
2015/08/11(火) 23:15:07.89ID:CoeY+3yy0198デフォルトの名無しさん
2015/08/11(火) 23:37:15.67ID:TiTJJGpgまあ、なんというかアレだな。
例えて言うのなら、電気を使わずに
電気柵を作る方法を教えて下さい。みたいな質問だな。
なんで電気を使わない?と思ったら、その理由が電気は
感電して怖いだのあれこれ理由を言う。
だがね。それならば感電防止機能を入れればいいだけなんだよ。
あんたがやりたいのは、安全な電気柵の作り方。電気を使わない方法じゃない。
あんたがやりたいのは、情報を一部分づつ表示する方法。jQueryを使わない方法じゃない。
作り方がわからないのに、いきなり自分で「jQueryを使わずに作る」という作り方を決めるなよ
その作り方が間違ってるんだよ。
つまりな、お前のその目的はjQueryのようなプラグインを使って実装できる。
おそらく使ったほうが簡単だろう。
あんたが調べるべきことが間違ってる。
どうすればいいかは、他の人に聞いてくれ。
夜遅いが俺はこれから出かけなくてはならないんだ。
0199デフォルトの名無しさん
2015/08/11(火) 23:56:52.00ID:Gq6LmRKv0200デフォルトの名無しさん
2015/08/11(火) 23:59:26.31ID:sF80SOD4CSVをJSONに変換してKEY名からテーブル構造のHTMLを作って
それぞれのKEY名をクリックしたら対応するValueからDOM作って当該位置に挿入するサンプルがほしい
っていうよりは下の方を見ると閲覧システムの設計でそもそも考えあぐねてるのかな
それなりに面倒だからエクセルで何とか表示させる方向で頑張ったほうがいいと思うよ
DB分割して軽くするなり、VBA使えるなら任意の箇所だけ抜き出して表示するなり
0201デフォルトの名無しさん
2015/08/12(水) 08:40:21.56ID:+yA7GmTQ0202デフォルトの名無しさん
2015/08/13(木) 02:17:20.39ID:jVnFAW0L業務なんだろ
アレ便利だぞ
0203デフォルトの名無しさん
2015/08/13(木) 07:09:40.49ID:n81SVna70204デフォルトの名無しさん
2015/08/13(木) 08:20:03.37ID:jNCMqTB5WSH でも使ったらいいんしゃないですかね
0205デフォルトの名無しさん
2015/08/13(木) 09:33:11.04ID:6HOKQ4ar0206デフォルトの名無しさん
2015/08/14(金) 00:44:06.16ID:vtoIaU0u0207デフォルトの名無しさん
2015/08/14(金) 12:13:57.70ID:p5nDK28D「非同期に情報を取得して表示するページをjQuery無しで作りたい」って言ってるのに「jQueryで作れ」とか回答になってないからな。
0208デフォルトの名無しさん
2015/08/14(金) 14:58:16.18ID:aFog9Tf1そもそもjQueryがインストールの必要なものだと思い込んでるのが誤り
0209デフォルトの名無しさん
2015/08/14(金) 21:19:04.81ID:vtoIaU0uWSH は立派な回答になっていると思うけど
0210デフォルトの名無しさん
2015/08/16(日) 13:22:37.29ID:onk31F/8よく読め、>>196は情報を見つけている。
> しかし非同期に情報を表示するページの作り方となるとjQueryプラグインかWWWサーバの機能(PHPなど)を利用するものばかりが出てくるので、
だからその情報通りにやればいいって話。
jQueryを使わないという条件を
つけるのが間違いだってこと。
間違った答えを出しているからせっかくの情報がムダになっている。
0211デフォルトの名無しさん
2015/08/16(日) 21:46:48.31ID:eBxInuMd当然、jQuery の .ajax() が動く保証もない。
ローカルファイルを読み込むなら new ActiveXObject("Excel.Application") 辺りが適切かと。
>>196にとっては VBA の方が良さそうだが、スレ違いだしな。
0212デフォルトの名無しさん
2015/08/17(月) 12:52:30.28ID:5VuANJB10213デフォルトの名無しさん
2015/08/17(月) 13:07:39.93ID:dlIvdh6iそれにしても、>>196はどこへ行った?
0214デフォルトの名無しさん
2015/08/17(月) 14:26:37.95ID:fPukF0yZ0215デフォルトの名無しさん
2015/08/31(月) 22:53:08.01ID:oxGqwRenグローバル変数名や関数名が重複したりしがちですが良い対策有りますか?
0216デフォルトの名無しさん
2015/08/31(月) 22:57:18.89ID:fsojoPt+モジュールパターン
0217デフォルトの名無しさん
2015/08/31(月) 23:06:33.82ID:oxGqwRenありがとうございました。
即時関数を使うんですね
0218デフォルトの名無しさん
2015/08/31(月) 23:16:35.05ID:fsojoPt+基本的には即時関数で囲めば大丈夫ですね
名前空間がわりのユニークなオブジェクトを用いることでグローバル汚染を最小にすることもできます
(jQueryなど比較的大規模なライブラリは基本的にそうしていますよね)
0219デフォルトの名無しさん
2015/09/01(火) 16:58:09.10ID:VBJ1oHHMこう言う統一性の無いデータ構造は処理速度を遅くするなどの可能性は有りますか?
0220デフォルトの名無しさん
2015/09/01(火) 19:43:04.87ID:zJENheg10221デフォルトの名無しさん
2015/09/01(火) 23:45:59.57ID:p4WHFNrlIEのChakraはオブジェクトの型を内部で作って最適化している、
的な記事を読んだ記憶がある
あなたのコードが当てはまるかどうかは知らない
0222デフォルトの名無しさん
2015/09/12(土) 19:15:38.62ID:hTbhIsEMすでに存在しているJavaScriptを使ったWebページを解析(というかどういうしくみになってるか理解)するためには
どのようにすればいいのですか?
なにかツールがあるのですか?
まだ自分ではJavaScriptで何か書いた経験はゼロです。
WebページでF12を押せばなんかツールみたいなのが出てくることだけは知っています。
0223デフォルトの名無しさん
2015/09/12(土) 20:42:46.13ID:407oNTEhWebページのHTMLやscript要素のテキスト、外部から読み込んでる.jsのソースを見るのが無難
もっとも、見てわかるようになるまではある程度知識が必要だから
まずはドットインストールでも見ながら簡単なページ作ってみればいいんじゃない
0224デフォルトの名無しさん
2015/09/12(土) 20:48:48.77ID:hTbhIsEMありがとうです。
まだ初心者なので言ってることがさっぱりわからないです。
まずドットインストールってなんでしょうか?
あと見てるのはかなり複雑なJavaScriptが埋め込んでるWebサイトなんですが
そこで使われてる関数の名前の一覧とか
埋め込まれているjsファイルの一覧、
そしてそのjsファイルをわかりやすく色分けした状態で見る方法みたいなのはありますでしょうか?
0225デフォルトの名無しさん
2015/09/12(土) 22:25:41.67ID:fWxjG3ht0226デフォルトの名無しさん
2015/09/12(土) 23:54:20.20ID:Y0QkDcDuドットインストールは、プログラミングを教えるサイト
<script src="File1.js"></script>
このようにHTMLのタグに、JSのファイル名が書いてあるので、
「script」でHTMLファイル内を検索すればよい
function(){ }
JSでは、名前のある関数定義は、functionで始まるので、
「function」でJSファイル内を検索すればよい
普通、エディタでソースコードを表示すると、
構文ごとに表示色も指定できる
まあ、色々と質問する前に、
まず自分で検索して調べてください。
それでもわからない場合に、質問して
0227デフォルトの名無しさん
2015/09/13(日) 00:09:47.71ID:f7snMU36本当に無料会員になればすべての動画を見れるのですか?
0228デフォルトの名無しさん
2015/09/13(日) 00:40:53.11ID:gpw/7Hjs0229デフォルトの名無しさん
2015/09/13(日) 07:46:02.01ID:f7snMU360230デフォルトの名無しさん
2015/09/13(日) 07:59:57.88ID:PQgMJiU0おまえが試してみんなに教えてくれよ
0231デフォルトの名無しさん
2015/09/13(日) 09:06:25.06ID:gpw/7Hjs0232デフォルトの名無しさん
2015/09/13(日) 11:19:33.25ID:JguKFMhj一から十まで教えて欲しいなら家庭教師を雇えばいい
http://dotinstall.com/premium
0233デフォルトの名無しさん
2015/09/13(日) 16:27:31.18ID:c7Lrzu+F色々あるんだなあ
0234デフォルトの名無しさん
2015/09/13(日) 22:42:52.72ID:OcEYiSuM書籍類は一切持ってないし
0235デフォルトの名無しさん
2015/09/13(日) 22:44:13.44ID:3BsRFwaLNHK高校講座、社会と情報に出ている、
「Rubyの女神」と呼ばれる、
女優の池澤あやかがよく使っているらしい
プログラミングをはじめよう、池澤あやか、2015、1,300円
0236デフォルトの名無しさん
2015/09/13(日) 22:55:22.05ID:gO4R7dxd生き残るためのネタか
女優も大変だな。
0237デフォルトの名無しさん
2015/09/23(水) 03:12:47.16ID:PUZmohrk画像をドラックドロップした位置も含めて送受信する方法がわからん
画像だけなら送受信できるんだけど
画像をバイナリに変換して、位置座標も含めて送信したいんだが
0238デフォルトの名無しさん
2015/09/23(水) 11:25:21.28ID:n9K2IqyHhttp://dotinstall.com/
この動画をファイルとして保存するにはどうすればいいですか?
0239デフォルトの名無しさん
2015/09/23(水) 11:32:14.11ID:HteDXMZ90240デフォルトの名無しさん
2015/09/23(水) 11:35:50.44ID:Tixv8Ju60241デフォルトの名無しさん
2015/09/24(木) 03:08:39.53ID:KIwTvfAfその関数に、可変長引数はついていないの?
>>238
動画を右クリックしたら、コンテキストメニューが出て、
そこから動画を保存できないの?
0242デフォルトの名無しさん
2015/09/24(木) 09:24:36.56ID:goqgO7/kそんなことができれば警察はいらないと思うのですが。
スーパーウルトラプレミア会員になっているかたですか?
0243デフォルトの名無しさん
2015/09/24(木) 12:48:11.58ID:mgme6LDc警察のお世話になるような内容を公共の場で質問しているのですか?
0244デフォルトの名無しさん
2015/09/25(金) 23:34:04.53ID:4d8u8vME0245デフォルトの名無しさん
2015/09/26(土) 06:34:31.75ID:v7fSGmLa<script type="text/javascript" src="src1.js"></script>
<script type="text/javascript" src="src2.js"></script>
...
<script type="text/javascript" src="src30.js"></script>
のようにJSファイルを読み込んで実行しているのですが、ie11なら問題ないのに、
ChromeやFireFoxでは、特定の関数が見つからないと出ます。でもその関数は、確かに存在していて、
読み込む順番もその関数が使われるまでに読み込まれるようにしています。
でも見つからないと出るんです。どうしたら良いでしょうか?
0246デフォルトの名無しさん
2015/09/26(土) 06:41:02.37ID:9LZTdQQ8バグを直す。
エラーが発生したコードを見ればすぐに分かる
0247デフォルトの名無しさん
2015/09/26(土) 06:43:21.69ID:v7fSGmLa解決しました。
0248デフォルトの名無しさん
2015/09/26(土) 11:18:26.68ID:gA+qxsAJ0249デフォルトの名無しさん
2015/09/26(土) 11:22:12.17ID:V6ncMGSJなぜ動画一般の保存方法を聞いて警察の世話になるんですt?
0250デフォルトの名無しさん
2015/09/26(土) 13:23:41.70ID:CSeulu2iあなたが「そんなことができれば警察はいらないと思う」と書いたからです。
0251デフォルトの名無しさん
2015/09/26(土) 23:40:26.38ID:V6ncMGSJこらまじめに答えたまえ
0252デフォルトの名無しさん
2015/09/27(日) 05:40:09.20ID:QHSPW0OV"use strict";
if (true)
{
function f() { } // !!! syntax error
f();
}
となりますが、"use strict";を取ると解決しますが、取らないで
エラーもしないようにする方法を教えてください
0253デフォルトの名無しさん
2015/09/27(日) 05:51:42.60ID:mQ+WRbZIif (true)
{
f();
}
if (true)
{
let f = function () { }
f();
}
if (true)
{
var f = function () { } //これはfのスコープがifの外にあるから注意
f();
}
0254デフォルトの名無しさん
2015/09/27(日) 05:52:05.78ID:kJP1aIir0255デフォルトの名無しさん
2015/09/27(日) 06:03:20.22ID:QHSPW0OV三番目の var f = の方式で上手く行きました。
やはりコードを書き換えないとダメなんですね。行数が2万行くらいあるので修正が大変そうです。
use strictをとってしまうのが手っ取り早いかな。
ちなみに、二番目の方式だと、
SyntaxError: let is a reserved identifier
と出ました。
0256デフォルトの名無しさん
2015/09/27(日) 06:10:22.80ID:mQ+WRbZI3番目で動くけど、正確な意味は、これと一緒だからね。
var f;
if (true)
{
f = function () { }
f();
}
0257デフォルトの名無しさん
2015/09/27(日) 06:15:27.52ID:QHSPW0OVFF 40.0.3
ならエラーで、最新版
FF 41.0
なら行けました。
と言う事は、もっとも安全かつ変更作業が少なくて済む方法は
var f = のやり方ですかね。
0258デフォルトの名無しさん
2015/09/27(日) 12:13:53.38ID:TVls4cfyまじめに答えてますけど。
あなたが「そんなことができれば警察はいらないと思う」と書いたんですよ?
0259デフォルトの名無しさん
2015/09/28(月) 15:38:36.05ID:e7uUBDedよりも
if(false)
と書くほうがif文の評価が速いですか?
0260デフォルトの名無しさん
2015/09/28(月) 15:48:54.97ID:Aor/5DQQ0.000000000000000000000000001秒ぐらいちがうよ!
0261デフォルトの名無しさん
2015/09/29(火) 11:21:02.03ID:UO7SUcno後者がより速い
0262デフォルトの名無しさん
2015/09/29(火) 11:34:34.35ID:yqK3ttcRなんて書くぐらいなら
if文中を全部コメントアウトしたほうが早いだろ。
0263デフォルトの名無しさん
2015/09/29(火) 14:47:13.62ID:0lZfHTgJ計測結果を教えてくれ
0264デフォルトの名無しさん
2015/09/30(水) 00:33:48.61ID:YmEebgyH環境依存が発生するものを他人の為に計測してやる義理はない
必要なら自分で計測して皆に教えてくれ
0265デフォルトの名無しさん
2015/09/30(水) 01:24:54.37ID:rQ1sG86l環境依存していて全然OKだよ!
0266デフォルトの名無しさん
2015/09/30(水) 09:01:06.40ID:YmEebgyHはっきりいわんとわからんようだが、試せばわかることを人に聞くな
0267デフォルトの名無しさん
2015/09/30(水) 09:18:11.86ID:rQ1sG86lわかったうえで聞いてる。
0268デフォルトの名無しさん
2015/09/30(水) 09:41:33.73ID:YmEebgyH悪質だな
0269デフォルトの名無しさん
2015/09/30(水) 10:53:47.11ID:rQ1sG86l0270デフォルトの名無しさん
2015/09/30(水) 14:54:32.99ID:YmEebgyH0271デフォルトの名無しさん
2015/10/02(金) 08:41:43.61ID:bVr75frV0272デフォルトの名無しさん
2015/10/07(水) 21:19:07.79ID:dwIDGxfg0273デフォルトの名無しさん
2015/10/07(水) 22:49:38.82ID:0FXYPI/Iこの動画のように単語をクリックすると和訳が出てくるような UI を作りたいんだけど、
JavaScript のどんなライブラリを使えば実現できますか?
https://youtu.be/I10qWoQEi5U?t=2m28s
自分はRubyとCはかなり書けるほうと思うけど、JavaScriptはほとんど触ったことがありません。
メジャーなライブラリを教えてもらえると助かります。
0274デフォルトの名無しさん
2015/10/07(水) 23:31:54.39ID:0iwSPjqOjQuery UI にあるかな?
「jQuery スライドショー」で検索して
>>273
単語をクリックすると和訳が出てくるような、
複雑なものは知らない
cssの:hover ならツールチップみたいになるけど、
スマホのタッチスクリーンには対応していない
HTMLのaタグでも出来る
<a href="#ダミー" title="サンプルです">ダミー</a>
「ダミー」の上でマウスが止まると、
「サンプルです」と表示される
「ツールチップ CSS HTML JavaScript jQuery」などで検索して
>>272-273
プログラム板では、HTML,CSS,JSで開発している人は少ないのでは?
web制作管理板で、質問するほうが良いかも
0275デフォルトの名無しさん
2015/10/08(木) 19:50:37.41ID:9yien46K(例:www.yahoo.co.jp)を非表示の状態で読み込んで、そのサイトの
文章などの文字列を取得してindex.htmlの中で利用したいのですが、
どういう手順になるのか見当も付きません。
おおまかな流れを教えてください。
0276デフォルトの名無しさん
2015/10/08(木) 20:22:54.80ID:84jDMCPEJavascriptだけでは不可能です
0277デフォルトの名無しさん
2015/10/08(木) 20:24:40.67ID:9yien46Kありがとうございます。PHPで聞いてみます。
0278デフォルトの名無しさん
2015/10/08(木) 21:06:56.30ID:Wj3paahs1.任意のサイトの情報をXMLHttpRequestで取得する
2.取得した情報を好きに使って利用する
おおまかだとこうなる
ただしブラウザの場合。サイトのドメインが異なる場合はセキュリティの都合で
サイト側がサーバーの設定で読み取られることを許可していないとできない
またブラウザ拡張機能からならドメインに関係なく取得できる方法もある
詳しくはCORSでググれ
0279デフォルトの名無しさん
2015/10/08(木) 21:08:20.55ID:Wj3paahs0280デフォルトの名無しさん
2015/10/09(金) 13:07:31.54ID:3wiHOwoqHoge.prototype.__defineGetter__('huga', function(){});
var hoge = new Hoge();
console.log(hoge); //Hoge {huga: (...)}
console.log(hoge.hasOwnProperty("huga")); //false
prototypeのgetter関数をさも継承先が自身のプロパティとして持っているように見えます
しかしhasOwnPropertyではfalseが返ってきます
これはコンソールの仕様で自身が持っているかのように見えているだけで
実際は持っていないと考えていいんでしょうか
0281デフォルトの名無しさん
2015/10/09(金) 13:25:50.31ID:IGSPExTPhasOwnPropertyはprototypeチェーンを遡りません
0282デフォルトの名無しさん
2015/10/09(金) 19:06:56.61ID:kOAM1c8Sあなたが期待するのは in 演算子
ついでに、__defineGetter__ は Object.defineProperty にすると良い
0283デフォルトの名無しさん
2015/10/10(土) 12:13:46.19ID:o2txIQD10284デフォルトの名無しさん
2015/10/10(土) 13:08:02.32ID:aPQSjKGF280です、レスありがとうございます
しかしhasOwnPropertyではなくin演算子だとHoge.prototypeまで遡ってしまうので
hoge自身がhugaを持っていないことの確認にならないと思うのですが…
Object.definePropertyはすっかり頭から抜けていました
次からはこっちを使うようにしようと思います
0285デフォルトの名無しさん
2015/10/10(土) 17:38:24.23ID:vT1N9X7j俺は詳しいわけではないが、多分それが仕様。コンソールの動作は正しい。
プロパティとメソッドではなくて、プロパティにデータまたはアクセサ。
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty
0286デフォルトの名無しさん
2015/10/10(土) 19:03:40.37ID:j7IjrgH2[[Prototype]] 上のプロパティを見ているのだから hasOwnProperty が false なのは当然だと思うのだけど
0287デフォルトの名無しさん
2015/10/13(火) 16:15:43.50ID:9phY+r4Z+ JavaScript の質問用スレッド vol.126 +
http://peace.2ch.net/test/read.cgi/hp/1444186237/l50
0288610
2015/11/05(木) 01:42:08.94ID:O9StB1rc0289デフォルトの名無しさん
2015/11/05(木) 12:03:44.08ID:7Y5j2Ab8JavaScript 4(c)2ch.net
http://peace.2ch.net/test/read.cgi/tech/1417749547/
0290デフォルトの名無しさん
2015/11/13(金) 23:18:35.97ID:ZOIef2ev0291デフォルトの名無しさん
2015/11/14(土) 00:24:10.30ID:A/cTWdIV0292デフォルトの名無しさん
2015/11/14(土) 08:25:30.10ID:ooiJA6skJSONは配列書けるんだから最初から配列にするのが最良
JSONフォーマットを制御出来ないなら順番に規則性があるとして Object.keys を sort する
0293デフォルトの名無しさん
2015/11/15(日) 18:55:29.22ID:DOi6KYg5JavaとVBAはかなりできるのでプログラミングの基本については省いてるけど
javascriptの文法についてはゼロから学べるものがいいです。
0294デフォルトの名無しさん
2015/11/15(日) 21:50:36.60ID:rTjjRyT5『JavaScript 第6版』でいいんじゃないかな
書名に「リファレンス」ってついてないほう
まさか1冊読んだだけできわめようとか思ってないよね
0295デフォルトの名無しさん
2015/11/15(日) 22:25:40.42ID:p50jhWVb『ECMA-262 Edition 5.1を読む』
0296デフォルトの名無しさん
2015/11/16(月) 00:57:51.27ID:EQy/E/K40297デフォルトの名無しさん
2015/11/16(月) 02:03:26.64ID:JsYgt5wOこれって答えなんなの?
演算式使うのかな
0298スッキリ厨
2015/11/16(月) 07:52:35.27ID:ZwIWeu8pはじめてのJavaScript、秀和システム
掌田津耶乃(しょうだ つやの)、2013
開眼!JavaScript、2013、オライリー・ジャパン
山田祥寛(よしひろ)、翔泳社
10日でおぼえる jQuery 入門教室 第2版
この3冊を、この順番で読む。
他には漏れは読んだことがないけど、
オライリーの分厚い本もある
0299デフォルトの名無しさん
2015/11/16(月) 08:07:12.67ID:U1t0nJK+はじめてのJavaScript、秀和システム
10日でおぼえる jQuery 入門教室 第2版
0300デフォルトの名無しさん
2015/11/16(月) 08:41:57.82ID:dZs54Tgiやめたほうがいい。
0301デフォルトの名無しさん
2015/11/16(月) 08:54:28.39ID:z+/eAFMGり と ご い す
0302デフォルトの名無しさん
2015/11/16(月) 11:20:49.22ID:+cn9jndKJava が出来るなら DOM API は習得しているとして ECMA, その他JavaScript API 関連を覚えればいいな
『ECMA-262 Edition 5.1を読む』『JavaScript 第6版』を購入して残りはWebで情報を得れば十分かと
http://jtdan.com/spec/
http://www.w3.org/TR/#tr_Javascript_APIs
http://www.ecma-international.org/ecma-262/6.0/
0303デフォルトの名無しさん
2015/11/16(月) 11:30:33.67ID:7yHHnP/Uhttp://jobinjapan.jp/cate/
全掲載求人109,160件の平均最低月給195,800円
JavaScriptの求人 の平均最低月給215,900円
http://jobinjapan.jp/job-listing/keyword-javascript.html
0304uy ◆Qawu9.2l1E
2015/11/20(金) 13:01:59.74ID:QlSu2hgWType・CoffeeScript「ワイも吐くンゴwwワイらの時代ンゴww」
Opal「ヨロシクニキーwwwwwwwwwwwwwwwwwwwwwwwww」
Ruby「おっOpalゥー!!!!!!wwwwwwwwwwwwwwwwwwwwwwwww」
Dart・Type・CoffeeScript「」
JavaScript「(=・ω・=)キャーRubyさんステキ!!」
0305デフォルトの名無しさん
2015/11/22(日) 21:30:36.54ID:j30Wwuuw1/2=0.5
1/4=0.25
実数値を文字列化する時に、割り切れない時は四捨五入で小数点以下5桁で、割り切れるならその全桁数をそのまま文字列化したいんですが、一発で出来る関数や手法は有りますか?
0306デフォルトの名無しさん
2015/11/22(日) 21:49:25.43ID:YuHI3rxM割り切れるの意味がおかしい
本来の割り切れるってのは商が整数で剰余が出ないってことだと思うが
君が求めているのは割り算結果が循環小数とかにならないって意味でしょ?
浮動小数点数演算について勉強した方がいい
0307デフォルトの名無しさん
2015/11/22(日) 21:53:08.09ID:j30Wwuuwそうそう。
その前提でお願いします。
0308デフォルトの名無しさん
2015/11/22(日) 21:55:59.14ID:YuHI3rxM書いたでしょ
>浮動小数点数演算について勉強した方がいい
0309デフォルトの名無しさん
2015/11/22(日) 22:01:10.79ID:j30Wwuuwそんな細かい事に拘る必要はありません。
回答お願いします。
0310デフォルトの名無しさん
2015/11/22(日) 22:31:27.08ID:r93th6vC結果を文字列化して小数点以下の数でも調べれば良いんじゃね
0311デフォルトの名無しさん
2015/11/22(日) 22:49:53.25ID:OxxJcFnUかなり適当に書いた
無駄多いから参考になるか微妙
(function (arr){
var r = [];
arr.forEach(
function (n,i){
r[i] = (n.toFixed(5)).split('.');
r[i][1] = r[i][1].split('');
for(var j = 5;j;){
j--;
if(r[i][1][j] == 0){
r[i][1].pop();
continue;
}
break;
}
r[i][1] = r[i][1].join('');
r[i] = r[i].join('.');
}
);
return r;
}([1/3,1/2,1/4]));
取り合えず全部5桁に揃えて、末尾から順番に見ていって、0でなくなるまで1文字ずつpop()すればいいんじゃない?
0312デフォルトの名無しさん
2015/11/22(日) 23:25:07.86ID:gEGmaphC0.5 * 2 === 1
0313デフォルトの名無しさん
2015/11/23(月) 05:50:54.71ID:7FCURHqQたとえば 1/1000000 みたいな循環しないけど5桁を超えるケースは?
まあ質問者がこれをどうするかによるけど
0314デフォルトの名無しさん
2015/11/23(月) 07:21:15.38ID:YU+u1mNlそもそも割りきれるの意味すらわかってなかった質問者に与える回答は
浮動小数点数演算について勉強しなさい
質問自体が間違ってるのだからこれしかないぞ
>>311 は質問の前提から外れまくってるし実に滑稽
0315デフォルトの名無しさん
2015/11/23(月) 07:45:07.04ID:ti6fp5wiそれは割り切れる場合だろ。
0316デフォルトの名無しさん
2015/11/23(月) 08:20:22.22ID:YU+u1mNlだから、それは割り切れるとは言わない
そもそもどうやって判定するつもりだ?
言っておくが数学上の割り算じゃなくて実際にやってるのは2進数による浮動小数点数演算だぞ
0317デフォルトの名無しさん
2015/11/23(月) 09:19:21.13ID:ti6fp5wi君、議論に加わる必要ないから。
0318デフォルトの名無しさん
2015/11/23(月) 09:30:17.12ID:7FCURHqQそう、そのケースでも>>311みたいな長さを見る方法では切れてしまうけど
それは質問者の意図としてはどうなん? てこと
0319デフォルトの名無しさん
2015/11/23(月) 09:42:58.57ID:YU+u1mNl>一発で出来る関数や手法は有りますか?
ここまでにこれに沿った回答が1っでもあっただろうか?
前提自体が間違ってるのに議論とかちゃんちゃらおかしい
理解を改めてもらったうえで本当にしたいことを確認しないとな
0320デフォルトの名無しさん
2015/11/23(月) 09:45:48.01ID:XxRvZT2I0321311
2015/11/23(月) 11:04:54.37ID:zzIVowg+確かにそうだ
ちらっと見て何も考えずに書いたから問題ありまくりっぽいね
割りきれる場合はそのまま表示のパターンで誰かコード書いてよ
コード出して、問題点指摘する方が話し合いをだらだら続けるよりは建設的だし
0322312
2015/11/23(月) 12:18:24.49ID:3c46ibgj逆算して値を照合するだけで解決するだろう。
丸め誤差がどうしても気になるなら整数演算に近づくように 10 の乗数を掛け合わせる。
0323デフォルトの名無しさん
2015/11/23(月) 14:30:08.19ID:fwuapcKX間違いに気がついてないアホはお前
3*(1/3) === 1
0324デフォルトの名無しさん
2015/11/23(月) 16:14:40.37ID:ti6fp5wi割り切れない場合は小数点以下n+1桁目を四捨五入してn桁までを求める。
割り切れる場合は、その全部を文字列化する。ただしnを超える部分が有る場合は、四捨五入の方法を用いる。
これでいいかな?
0326312
2015/11/23(月) 17:26:14.67ID:HbVCI0Y/bignumを使った整数演算で解決できそうだが。
0327デフォルトの名無しさん
2015/11/23(月) 19:22:01.08ID:fwuapcKX誤差の話なんてしてないんだが・・やっぱりアホなの?
0328デフォルトの名無しさん
2015/11/23(月) 19:32:05.43ID:ti6fp5wi0330312
2015/11/23(月) 22:26:53.13ID:xqKq/xpI0.3333333333333333 * 3 の結果が 0.9999999999999999 となるbignum系ライブラリを使えばいいかと。
0331デフォルトの名無しさん
2015/11/24(火) 04:57:49.58ID:TPIY6jGNそれも循環小数になると判定されるぞ
0332デフォルトの名無しさん
2015/11/24(火) 07:05:52.28ID:VKmO+9+00333デフォルトの名無しさん
2015/11/24(火) 08:25:41.37ID:DINFs6Pn循環小数の証明すらやったことない中卒しかおらんのか
0334デフォルトの名無しさん
2015/11/24(火) 10:29:45.10ID:zV3eHeKoアホか
固定値なら逆算式も変わるだろ
0335デフォルトの名無しさん
2015/11/24(火) 13:00:23.14ID:TPIY6jGN0336デフォルトの名無しさん
2015/11/24(火) 13:13:32.93ID:TPIY6jGNconsole.log(1/3);
console.log(3333333333333333/10000000000000000)
と循環小数になるのとそうでないのとは
(循環小数の方は切り捨てられて)
同じ値になるけど
この値に割る数を掛けて割られる数になるかどうかで
循環小数かどうかを判断できるって主張だよな?
(循環小数ではなく)固定値ならというが、それを判断する方法を言ってるのに
それに応じて計算式を変えるっていうのはどういうこと?
0337デフォルトの名無しさん
2015/11/24(火) 13:54:45.20ID:h+VQBoPG固定値なら「0.9999999999999999 / 3 === 0.3333333333333333」だろう?
「0.3333333333333333 * 3 === 0.9999999999999999」なのだから当然一致する。
数学的には「1/3 !== 0.3333333333333333(IEEE754的には真)」
「0.3333333333333333 * 3 !== 1」となる。
つまり、IEEE754に演算を任せなければ良い。
0338337
2015/11/24(火) 14:09:37.19ID:h+VQBoPG除算を逆算して乗算にしているだけ。
0339デフォルトの名無しさん
2015/11/24(火) 14:26:11.49ID:TPIY6jGNなるほど、なんとなく言いたいことはわかった気がする
だがそれは、その仮想の数値計算ライブラリ(もしくはそれを使った計算)が
循環小数もしくは固定値をどこで切り捨てるかに関わってくるんじゃないか?
つまり、固定値でも切り捨てられたら元に戻らないよね
結局は(wikipediaに載っているような)割る数と割られる数で循環小数の判定をしなきゃだめってことでは
0340デフォルトの名無しさん
2015/11/24(火) 14:36:19.44ID:VKmO+9+00341337
2015/11/24(火) 15:27:06.06ID:6cLiz0ar>>305はIEEE754の範囲で割り切れない数と判断している為、1/3 が 0.3333333333333333 と評価される前提でいいと判断した。
つまり、切捨てはIEEE754の範囲となる。
後はその数値を元に演算すれば良い。
そもそも、「循環小数の定義を認める前提」なら割り切れない事を判定する必要はないだろう。
数学的には「0.333...(循環小数) * 3 === 1」となる。
従って、「0.3333333333333333 * 3 === 1」は循環小数としての演算結果ではないものの(結果的には)期待通りの結果であるはずだ。
これを期待しないのなら切捨てられる前提(循環小数ではないもの)として考えるべきだろう。
循環小数を正しく解釈するぐらいなら「分数」を内部処理的に認識する方がまだスマートといえる。
0342デフォルトの名無しさん
2015/11/24(火) 16:50:59.60ID:o2Douu6Y正確には約0.3{15}29以上0.3{15}34未満の有効値となる
この値を文字列とした時に0.3{15}3となるのはあくまで表記の問題で、実際その値であるという意味ではない
これを3倍すると数学的には約0.9{15}86以上1.0{15}28未満の有効値となる
ただ単にdoubleで1.0と表した時には約0.9{15}94以上1.0{15}11未満の有効値なのでこの範囲を外れており確実に1.0とは言えない
これが中央値1.0{15}07をとって1.0と同等に正規化されるか、より上や下の値になるかはモードによって違う
0343デフォルトの名無しさん
2015/11/24(火) 16:54:36.33ID:VKmO+9+00344デフォルトの名無しさん
2015/11/24(火) 17:15:59.24ID:o2Douu6Y厳密に言うならdoubleは一点を表せられるものではないから
オレオレ数値型を作って超面倒な運用をしないといけない
まあ将来的にはES2017以降のvalue-objectsをベースとして
思うままの数値型を作れるから運用面での面倒さは無くなるだろうよ
0345デフォルトの名無しさん
2015/11/24(火) 17:17:11.20ID:qVxYz0C/入力が浮動小数の場合は、無理だよ、というのが解答
0346デフォルトの名無しさん
2015/11/24(火) 21:02:19.29ID:VKmO+9+0浮動小数点演算で割り切れるかどうか判定出来なくても、プログラムは書けるだろ。
それが出力する結果が数学的な意味での正しい解答になっていればいいだけだから。
ここではできる人がいないようなのでお題スレに行くわ。
0347デフォルトの名無しさん
2015/11/24(火) 22:06:21.79ID:M6yTWdhi0348デフォルトの名無しさん
2015/11/24(火) 22:15:08.39ID:cJUbqgX1doubleである限りデフォルトの表記かそれに毛が生えた程度のものが限界
例えば3333333333333333e-16と1/3を区別できないんだし
0349デフォルトの名無しさん
2015/11/25(水) 00:29:44.47ID:O+sc6fcj0350デフォルトの名無しさん
2015/11/25(水) 06:40:14.89ID:xU7WfTzqプログラムで取り敢えず組めるが
それは数学的に正しくできないから正解にはならないということだな
0351デフォルトの名無しさん
2015/11/26(木) 08:54:35.58ID:gxenBIDW君、プログラミングの能力低そうだな
0352デフォルトの名無しさん
2015/11/26(木) 09:30:35.50ID:PuA+0wtS0353デフォルトの名無しさん
2015/11/27(金) 05:10:46.27ID:YYaQ4CLl【何をしたのか】Date getTimeによる時刻表期にズレが出てくる
【期待する結果】20msくらいの誤差で複数端末間(PC/スマホ問わず)の時刻を同期する
【サンプルコード】
時刻同期はNTPサーバを使って差分を考慮して行ってます
function getTime(){
$.ajax({
type: 'GET',
url: 'http://ntp-a1.nict.go.jp/cgi-bin/json?'+Date.now()/1000,
dataType: 'json',
success: function(json){
var nowDate = Date.now();
var latency = (nowDate-json.it*1000)/2;
var fixedTime = json.st*1000 + latency;
var localTIme = Date.now();
offset = fixedTime - localTIme;
}
});
}
やりたいことは複数端末間での精度の高い時刻同期です。
現状、出来ているといえば出来ているのですが、5分くらい放置していると
少しずつズレが出てきて目測ですが400msくらいのズレが発生しているように見えます
その場合、ページを更新するとまたピッタリになるのですが、
ページを更新せずにずっと時刻を同期し続けることは可能でしょうか?
0354デフォルトの名無しさん
2015/11/27(金) 05:13:39.89ID:YYaQ4CLlvar d = new Date(Date.now()+offset);
var h = ZeroFill(d.getHours(),2);
var m = ZeroFill(d.getMinutes(),2);
var s = ZeroFill(d.getSeconds(),2);
var u = ZeroFill(d.getTime()%1000,3);
各端末の内蔵時計にサーバーとの時刻とのズレを足し引きして
表示させています。Date.now()はnew Date().getTime()と同じです。
内蔵時計がずれていかなければ一回offsetを算出すれば
基本はずれることがないと思うのですが・・・
0355デフォルトの名無しさん
2015/11/27(金) 08:27:02.13ID:JennF9kz対象が1.5万km/sくらいで移動していれば相対性理論によりそのくらいの差が出る。
0356デフォルトの名無しさん
2015/11/27(金) 12:17:01.45ID:X+JLR2lJもちろんXHRの所要時間も加味して
でも5分で400msもズレる原因を探した方が楽なんじゃねえかな
0357デフォルトの名無しさん
2015/11/27(金) 12:41:12.67ID:9ORRm5xJ定期的にoffsetを取得するしか無いのではないかな
あるいはaudioContext.currentTimeを使うのはどうか
0358デフォルトの名無しさん
2015/11/27(金) 13:34:33.24ID:ADRINJe1片方が遅れて見えるのはsetTimerやらsetIntervalが正確だと思い込んでる所為じゃね
0359デフォルトの名無しさん
2015/11/27(金) 14:37:30.45ID:7QRTKik/参考迄に教えてけろ。何で
そんなに精度良く同期させる必要が有るん?
0360デフォルトの名無しさん
2015/11/27(金) 15:08:06.52ID:YYaQ4CLlいまoffsetを20秒ごとに更新するようにしているのですが
どうも一回スリープに入るとズレが生じるような気がしてきています
もうちょっと原因を検証してみます
>>357
サーバーの時刻を一度だして、それ以降はaudioContext.currentTimeを
取得しながら時刻を表示していくということですね
ちょっと一回トライしています!
>>358
setIntervalは20msで設定しています
20msなので人間が知覚できるほどのズレはないような気がしますが
現状は余裕で知覚できるほどのズレが発生しています
>>359
ネトゲで友達と一緒にやるために
サーバーに対して同時刻にアクセスしたいんです
0361デフォルトの名無しさん
2015/11/27(金) 16:00:53.47ID:vrZOFMnm同時刻にアクセスしても、一緒にやれるわけじゃないだろう?
0362デフォルトの名無しさん
2015/11/27(金) 16:32:29.72ID:iIljupK4運ですね
ただグループはアクセス順で決まるので
完全に同時刻にアクセスしたら
一緒にやれる確率がかなり高いんです
もちろん人的な誤差やネットワーク的な誤差もあるのは分かりますが
減らせるところの誤差はなるべく減らしたいんです
0363デフォルトの名無しさん
2015/11/27(金) 17:02:05.49ID:tJ3YDWoo0364デフォルトの名無しさん
2015/11/27(金) 18:02:39.08ID:wJd8+GUt0365デフォルトの名無しさん
2015/11/27(金) 18:10:23.71ID:ADRINJe10366デフォルトの名無しさん
2015/11/27(金) 18:25:10.18ID:G3gCBxYm> ただグループはアクセス順で決まるので
> 完全に同時刻にアクセスしたら
> 一緒にやれる確率がかなり高いんです
そういうシステムなのか?
普通に考えたらサーバーが複数ある=負荷を下げるためなので、
短時間に集中したアクセスが同じサーバーに振り分けられたら負荷下がらないし、
先着順に同じサーバーに振り分けられるとするならば、
最後のサーバーはスカスカになるはずだし、設計的にかなりおかしいんだが?
> もちろん人的な誤差やネットワーク的な誤差もあるのは分かりますが
> 減らせるところの誤差はなるべく減らしたいんです
誤差の話じゃないんだ。完全に同時に来たとしても振り分けられるように作ってるはずだということ。
同時刻であれば一緒にやれる確率がかなり高いっていうのは都市伝説だろう?
公式にそういう機能があると明確に言っているならば別だが、やるだけ無駄だと思うがね。
0367デフォルトの名無しさん
2015/11/27(金) 18:42:23.12ID:ADRINJe1お前が言ってるのは皆が同一のゲームをするMMOの話じゃないのか?
MO系のサーバーなら同一サーバーで処理した方が良いし
それを単純に均一に振り分けてたらいつまで経っても人数が揃わないだろ
0368デフォルトの名無しさん
2015/11/27(金) 20:00:01.00ID:tds5BOFGそれより、目的がそれならTS3とかを使ったほうがよっぽど同期しやすいと思うんだがな
0369デフォルトの名無しさん
2015/11/28(土) 00:07:51.49ID:zYBVt+cciPhoneだとどうもaudioContext.currentTimeは動作しないらしく
値が0に固定されるようなのでトライしたものの残念な結果になりました
>>364,365
seIntervalはそこまで信用していないのですが
20msだろうと、それが50msになろうと、
呼び出した中でDate.now()の返り値が正常であれば
それにoffsetを足して表示するだけの話なので
setIntervalが不安定でもそこまで問題ないように思えるのですが・・・
まぁさすがにsetIntervalが200msくらい遅れるとかなら困りますが・・・
>>366
システムの仕様は明かされていませんが
ほぼ合流不可能な中でこれまで同時押しでかなり高確率で合流できています
時刻合わせしなかったらまず合流できることはありません
まだ時計の精度は悪かった時よりも
NTPで時刻の精度を上げて以降、合流できる確率が上がったのも事実です(体感ですが)
>>368
TS3って調べてみたのですがボイチャですか?
最終的に不特定多数の人に公開したいツールなので
ボイチャはちょっときついかもです
ということで・・・、audioのcurrentTimeがダメだったので
もう少し別のやり方を検討してみます
0370デフォルトの名無しさん
2015/11/28(土) 01:54:37.04ID:GEMUQykl君の設計が悪いことは間違いないので勉強し直すように
以上
0371デフォルトの名無しさん
2015/11/28(土) 03:46:21.62ID:hixXfPcg悪いのは設計だろうかそれとも頭だろうか
0372デフォルトの名無しさん
2015/11/28(土) 04:19:17.89ID:zYBVt+cciOSでも動作するようです。
時刻をNTPで合わせた瞬間からの経過時間を計測し
その経過時間を加算して現在時刻を表示するというアルゴリズムで実装しました
Date.nowは一切使ってません。
performance.now()は結構精度がいいようで
割と時刻が同期されるようになりました
ただ、iPhoneがスリープ状態に入ったときにカウントが止まってしまうので
それが問題になりました。
それは、スリープを検知するような関数を実装して
スリープを検知したらページをリフレッシュするようにして解決しました。
これで今のところ何時間かたってもほとんどズレがないようになったような気がします。
もう少し運用してみないと分かりませんが・・・
とりいそぎ、同じ状況で困った人がいたときのためのメモ書きです。
ちなみに色々調べてたらDate.now()というかnew Date()もそうなんですが
どうも動作が遅いようです。
http://konbu13.hatenablog.com/entry/2014/02/08/113447
のページによると140ms〜230msかかっているようで
確かにその時間は僕のやりたいことから考えるとクリティカルな遅さです
iOSとかは特にその遅さの影響を受け安かったんですかね・・・
その他リソースの使用状況にもよるかもしれませんが
とりあえず割といい精度になってきたので書き込みはこれで最後にします
色々情報くれた方ありがとうございました、助かりました。
0373デフォルトの名無しさん
2015/11/28(土) 04:29:06.31ID:hiaEqByC> 百万回やった合計時間でどちらが速いか算出します.
> Result
> method time
> new Date() 233msec
> Date().now() 142msec
と言うか根本的な解決はできてないと思うけど困ったらまたいらっしゃい
0374610
2015/11/28(土) 21:52:17.08ID:u/RqRVR/JavaScript情報交換所(プログラミング既習者専用)
http://peace.2ch.net/test/read.cgi/tech/1448714123/
(289の誘導先には投下済み)
0375デフォルトの名無しさん
2015/11/28(土) 23:08:58.63ID:omVU5b+00376デフォルトの名無しさん
2015/11/29(日) 00:06:32.48ID:jeYb2Mq1テンプレからも自分以外を見下した感がはっきりと現れているし、まともな議論を望む人は行かないほうがいいかと
0377デフォルトの名無しさん
2015/11/29(日) 16:34:35.60ID:9CgkJ04Dこれほど助かる事もあるまい
0378デフォルトの名無しさん
2015/11/29(日) 16:40:13.54ID:YeIwqIKD0379デフォルトの名無しさん
2015/11/29(日) 21:23:29.08ID:ttk2cNlA各言うここも元々は隔離スレなんですがねw
0380デフォルトの名無しさん
2015/11/29(日) 22:26:46.50ID:GFfphPGr0381デフォルトの名無しさん
2015/11/30(月) 00:12:59.62ID:eeMkzjwS0382デフォルトの名無しさん
2015/11/30(月) 00:13:26.95ID:eeMkzjwS編成事故だろこれ
0383デフォルトの名無しさん
2015/12/01(火) 00:02:41.35ID:STfQzAtr例えば、ドラッグ&ドロップで500MBのデータをFILEAPIで読み込み、BLOB形式に落とし込んだデータを10分割する方法。
読み込み自体は、4GBでも実現できたのですが、それを分割する方法が思い付かない・・・
最初は、sliceやsubstrなどで部分読み込みしようとしたのですが、60MBより大きなファイルに処理をかけるとエラーまたはフリーズ状態になってしまいます。
当然軽くさせるためにlengthなども外しています。
何か良い方法はないでしょうか?
0384デフォルトの名無しさん
2015/12/01(火) 07:47:46.62ID:xvXjXk07+ JavaScript の質問用スレッド vol.127 + [転載禁止]©2ch.net
http://peace.2ch.net/test/read.cgi/hp/1448293871/l50
0385デフォルトの名無しさん
2015/12/01(火) 13:23:56.62ID:C95UNH5lBlob#slice()が通らないならどっか間違ってるか実行環境の問題じゃないかな
それが特定のブラウザだったら>>384で聞いたほうがいい
0386デフォルトの名無しさん
2015/12/01(火) 15:24:29.22ID:STfQzAtrsliceは巨大な文字列を部分抜きできるものなの?
0387デフォルトの名無しさん
2015/12/01(火) 15:30:47.45ID:lIW/6OLc0388デフォルトの名無しさん
2015/12/01(火) 15:33:41.03ID:STfQzAtrありがとう。
そちらでレスしてみました。
0389デフォルトの名無しさん
2015/12/01(火) 15:34:35.77ID:STfQzAtr既に試してダメだったので383でレスしました。
0390デフォルトの名無しさん
2015/12/01(火) 15:56:50.87ID:C95UNH5lちょっと待ってどこから文字列が出てきたんだ
blob型を分割したいけどできないって質問だった筈だよね
何かおかしいから質問し直すにしてもサンプルコード出した方がいいと思うよ
0391デフォルトの名無しさん
2015/12/01(火) 18:44:55.03ID:pST9GKGGどういうコードで試したのかは書いてくれないとね。
0392デフォルトの名無しさん
2015/12/07(月) 07:29:07.30ID:7ldc1+VM+ JavaScript の質問用スレッド vol.124 + [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/tech/1427008785/
0393デフォルトの名無しさん
2015/12/10(木) 01:22:25.69ID:Gagm3MNk0394デフォルトの名無しさん
2015/12/10(木) 01:43:25.58ID:ZhUmFj4bその二つを同時にやるならサイト側のスクリプトか拡張機能かサーバーサイドじゃないと無理
0395デフォルトの名無しさん
2015/12/11(金) 08:28:22.96ID:GWmwMFvD0396デフォルトの名無しさん
2015/12/14(月) 23:12:20.44ID:ls6EZ2cx30M程度のBLOB型文字列だとsliceで指定範囲を抜き取れるが、500Mや1Gの巨大なファイルになると失敗してしまう。
JavaScriptだけで巨大な文字列を分割する良い技ないですかね・・
0397デフォルトの名無しさん
2015/12/15(火) 00:52:49.97ID:qjG5txy2あのなぁ、昔はメモリどころかHDDが1GBもない時代があったんだぞ。
その時代であったって、ちゃんと作ればそれぐらいのデータは扱える。
メモリにいっぺんに乗り切らないなら分割して扱えばいいだけの話。
少しは考えた方がいいぞ。言語の勉強をするんじゃなくて
アルゴリズムの話だ。
0398デフォルトの名無しさん
2015/12/15(火) 01:38:34.89ID:uWpoWN+Sblob型文字列ってなんだよ…
blob型を分割しようとして失敗するならそのコードがどこか間違ってるし
それを文字列に変換したもので失敗するなら実装の制限にぶち当たってるから
その場合は>>397の言うように事前に分割するしかない
0399デフォルトの名無しさん
2015/12/15(火) 18:08:16.92ID:WPjAuEFOたぶん意図的に読みづらくしているのでしょうが、読みやすくするソフトとかないでしょうか?
0400デフォルトの名無しさん
2015/12/15(火) 18:45:50.12ID:AvAOTExp0401デフォルトの名無しさん
2015/12/15(火) 21:55:10.29ID:uYEbzlBn制限か何かにあたったのかな・・
今行っているのは、2.2ギガバイトのファイルをドラッグ&ドロップで読み込み、URLまたはtextで読み込んだあとに、sliceで指定部分を抜き出そうとしているのですが、失敗に終わっています。
59MBまでなら成功したので397の通り自分の書いたプログラムに無理があるのかなと・・・
困り果てています。
因に事前に分割とは、JavaScript以外の方法でということですか?
自分がやりたいことは以下です。
1、fileAPIで読み込む(2ギガ以上)
2、10MB程度に分割
3、Ajaxで送信
4、分割されたファイルを組み立て再構築
5、元のファイルに戻して保存
59MBのファイルなら成功しました。それ以上だと・・・・
何か分割する方法ないでしょうか、
0402デフォルトの名無しさん
2015/12/15(火) 22:17:38.64ID:eq/fh4de0403デフォルトの名無しさん
2015/12/15(火) 23:14:28.57ID:NyiJCKNO0404デフォルトの名無しさん
2015/12/16(水) 00:43:40.05ID:sgXyEvFI0405デフォルトの名無しさん
2015/12/16(水) 07:34:17.89ID:3i7Ahh0A0406デフォルトの名無しさん
2015/12/16(水) 08:26:46.56ID:7CCFFtotストリーム入力
ActibXobject
0407デフォルトの名無しさん
2015/12/16(水) 08:31:01.54ID:386jW6/x0408デフォルトの名無しさん
2015/12/16(水) 11:11:28.48ID:XbnIVOIYオフラインでドラッグ&ドロップのfileAPIで読み込みたいのですが、巨大なファイル(2ギガ以上)だと何かの上限で無理なんですかね?
0409デフォルトの名無しさん
2015/12/16(水) 11:17:23.35ID:hg6iyaJa0410デフォルトの名無しさん
2015/12/16(水) 12:14:10.78ID:FY7Nx9Qu0411デフォルトの名無しさん
2015/12/16(水) 12:15:49.35ID:FY7Nx9Qu0412デフォルトの名無しさん
2015/12/16(水) 13:13:47.58ID:bNVTe3xs0413デフォルトの名無しさん
2015/12/17(木) 08:18:25.00ID:woxLyQ04通常の配列は2**32-1以下の制限があるが型付配列は2**53-1以下であり8PiBまで扱える
0414デフォルトの名無しさん
2015/12/17(木) 12:31:04.29ID:3Bayziwhただ、この機能はあくまで入力補助目的なので、手入力した場合と同じ挙動にしたいのですが、
普通にvalueを書き換えただけでは、フォーカスを失った時のchangeイベントが発生しなくなってしまいます。
質問�@
手入力したときと同じように、changeイベントが発生する状況をjsで作り出してやることは可能でしょうか?
※プロパティとか見てみたけど、それらしいものが見つかりませんでした。
また、valueを直接書き換えるのがだめなら、通常のキー入力をエミュレートして入力してやれば、changeイベントも動いてくれるかなと思ったのですが、キーイベントを発火しただけでは文字は入力されないようです。
質問�A
実際に値が入力される所まで再現させる方法はあるでしょうか?
(それができたとして、changeイベントが発生するかは、別の話ですが…)
ということで、やりたいのはjsで値を変えつつ手入力時と同じようにchangeイベントも発生させることです。
最悪、タイミングは若干変わってしまいますが、blurの中でchangeイベントを発生させてやるしかないかもと思ってます。
よろしくおねがいします。
0415デフォルトの名無しさん
2015/12/17(木) 14:17:38.28ID:o7OE0QW2function my_func() {
repeat_cnt++;
if (repeat_cnt === 100) { // 上限の100回になったら終了する
return;
}
if (is_end_condition()) {
// ここで必要な処理をする
} else {
setTimeout(function () {
my_func();
}, 10);
}
}
function main() {
my_func();
}
こういう再帰呼び出しをやっても問題ないですか?
場合によってはstackoverflowエラーなど出ませんか?
0416デフォルトの名無しさん
2015/12/17(木) 15:05:07.17ID:X7jSmipQそれが起こる再帰回数は実装依存
0417デフォルトの名無しさん
2015/12/17(木) 15:28:28.70ID:4ODMQ8bg0418デフォルトの名無しさん
2015/12/17(木) 15:35:01.90ID:qYA12dWq0419デフォルトの名無しさん
2015/12/17(木) 15:38:21.34ID:qYA12dWq起こらないのは末尾再起やな
>>415のは>>417の言うように非同期だからこれまた起こらない
0420デフォルトの名無しさん
2015/12/17(木) 17:37:19.09ID:o7OE0QW2どっちが正しいのでしょうか
0421デフォルトの名無しさん
2015/12/17(木) 20:18:42.20ID:2fqt+8T50422デフォルトの名無しさん
2015/12/17(木) 20:29:36.50ID:3Bayziwh0423デフォルトの名無しさん
2015/12/17(木) 21:09:59.65ID:TfrmoFMM0424デフォルトの名無しさん
2015/12/17(木) 21:59:40.13ID:dJ6WmCFSたんに同じ関数が何度も実行されるってだけの状況だと思うけど、これは再帰って呼んでいいの?
0425デフォルトの名無しさん
2015/12/17(木) 22:10:00.53ID:o7OE0QW2関数内から同じ関数を呼んでいるので再帰的な動きですが、これをループか何かで書き換えて再帰的な感じを無くす事は出来ますか?
0426デフォルトの名無しさん
2015/12/17(木) 22:46:28.31ID:J4jHSYqRsetTimeoutは、その場で待つわけじゃなく、関数は最後まで走っちゃうよ。
その後、時間が来たらsetTimeoutに登録された関数が実行される。
だから、関数内から自分を呼び出してる訳じゃないんで、再帰とはいわないと思う。
まあ、どう呼ぶかはさておき、普通の再帰みたいにコールスタック使いまくる用な事にはならないから、スタックオーバーフローは発生しないし、別に変えなくてもいいと思う。
再帰っぽい感じのコードが嫌なのならsetIntervalを使ってみたら?同じだけど。
0427デフォルトの名無しさん
2015/12/17(木) 23:40:09.12ID:mvUSBC4CdispatchEventでchangeイベント発火させてやればいいんでね
element.dispatchEvent(new Event('change'))でできるはずだけど
確かIEはnew Eventできないのでdocument.createEventでchangeイベントを作成する必要がある
0428デフォルトの名無しさん
2015/12/17(木) 23:48:47.04ID:mvUSBC4C0429デフォルトの名無しさん
2015/12/18(金) 08:35:49.78ID:3yHnx8Mf無駄にクロージャを形成してGC働かせたり、グローバル変数を使っていることが気になる
setTimeout(my_func, 10, repeat_cnt); で十分
0430デフォルトの名無しさん
2015/12/18(金) 13:29:51.96ID:aALELz7qそんな書き方が出来るのかよ!
君は優秀だな
0431デフォルトの名無しさん
2015/12/18(金) 14:08:24.41ID:7Erpdy7Z0432デフォルトの名無しさん
2015/12/18(金) 14:10:29.70ID:7Erpdy7Z0433デフォルトの名無しさん
2015/12/18(金) 17:35:16.80ID:borw4si80434デフォルトの名無しさん
2015/12/18(金) 17:37:55.19ID:borw4si80435デフォルトの名無しさん
2015/12/18(金) 19:11:11.64ID:/TkrVzDwIE10 で動くわけだが、IE全般で使えないかのようなミスリードは良くない
IE9- はpolyfillを使えばよい
0436デフォルトの名無しさん
2015/12/18(金) 20:40:36.86ID:aALELz7q一々w付けんなよw
0437デフォルトの名無しさん
2015/12/18(金) 20:51:05.24ID:g1D+z+o4このポリフィルる
0438デフォルトの名無しさん
2015/12/19(土) 04:13:13.83ID:qAOTtWfGレガシーIEに対応しないといけないような特殊な場合のみ。
0439デフォルトの名無しさん
2015/12/19(土) 04:46:59.84ID:ysM2oFx/0440デフォルトの名無しさん
2015/12/19(土) 06:54:17.53ID:lBORTjAw分かっていて使っている「玄人」の相手なんかしなくていいよな???????????
0441デフォルトの名無しさん
2015/12/19(土) 08:26:31.32ID:IhTv1p38そういうことはWindows10にアップグレード可能なOSとIE9をサポートするOSが一致するか調べてから発言しような
0442デフォルトの名無しさん
2015/12/19(土) 11:43:33.94ID:Zi1J5vpJ0443デフォルトの名無しさん
2015/12/19(土) 12:49:01.27ID:IhTv1p38そういうことはEdgeの対応OSを調べてから(ry
0444デフォルトの名無しさん
2015/12/19(土) 19:00:09.47ID:pEku9roO何言ってんだ????????こいつwwwwwww
0445デフォルトの名無しさん
2015/12/19(土) 19:22:19.99ID:ysM2oFx/おう、お前の知り合いは全員Windows 10にしたかな?
会社のパソコンのOSはなんだい?
0446デフォルトの名無しさん
2015/12/19(土) 20:17:42.40ID:HC0McPg/0447デフォルトの名無しさん
2015/12/20(日) 03:42:39.14ID:szXGSrMlconfigとかroutesとかviewとかRESTfulとかめんどくさいんですよ、どうせ俺しか弄らないんだし
今はクライアント側にHTMLとAngularでAjax呼ぶ
サーバサイドでJSON応答する
だけで書いてますがそんな感じの
0448デフォルトの名無しさん
2015/12/20(日) 03:49:08.88ID:jqjYNF9zHTML+CSS+jQueryでよい。
HTMLとCSSをただしく使えるのであれば
jQueryだけでビュー部分は簡単に作れる。
0449デフォルトの名無しさん
2015/12/20(日) 04:00:40.70ID:szXGSrMljQueryはAjaxでちょっとだけ使ってますわ、
スタイル切り替えはAngularの{{}}でやってる
「小規模なんだからフレームワークなんて要らない好きなように書け」
ですかねありがとうございます
0450デフォルトの名無しさん
2015/12/20(日) 09:41:11.53ID:C3TDTIV2www.example.net
間でobject型のデータを互いに交換したいのですが、
最も高速にやれるのは
どういう関数を使うべきですか?
キーワードを教えて下さい。
0451デフォルトの名無しさん
2015/12/20(日) 10:06:02.94ID:6N9tUz3v0452デフォルトの名無しさん
2015/12/20(日) 10:26:06.76ID:C3TDTIV2chromeで動けばいいです。他は無視で構いません
0453デフォルトの名無しさん
2015/12/20(日) 10:46:53.64ID:6N9tUz3vwindow.postMessage
http://please-sleep.cou929.nu/introduction-to-web-messaging.html
0454デフォルトの名無しさん
2015/12/20(日) 12:16:25.07ID:C3TDTIV2レスありがとうございました。
このサンプルはiframeを使った例のようですが、そうではなくて
全く独立した二つのウインドウ間で通信したいのですが。
どうやっても出来ません。
0455デフォルトの名無しさん
2015/12/20(日) 12:24:32.54ID:J44fsBtDpostMessage はframeでなくても使えるはずだけど
0456デフォルトの名無しさん
2015/12/20(日) 12:26:11.54ID:C3TDTIV2それが出来ないんです。もう2日くらい行き詰っています。
本当にできるのでしょうか?
0457デフォルトの名無しさん
2015/12/20(日) 12:41:48.64ID:J44fsBtDChrome独自の制約は特に見つからないけどなあ
もう一度仕様を読んでコードを見直してみては?
https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage
https://html.spec.whatwg.org/multipage/comms.html#dom-window-postmessage
http://caniuse.com/#feat=x-doc-messaging
0458デフォルトの名無しさん
2015/12/20(日) 15:58:14.65ID:C3TDTIV2もう全然ダメです。行き詰まってます。
しばらく寝ます。
0459デフォルトの名無しさん
2015/12/20(日) 20:52:40.73ID:C3TDTIV2どこかに動くサンプル有りませんか...
0460デフォルトの名無しさん
2015/12/21(月) 01:36:27.38ID:VR8UuUsJttp://the-zombis.sak ura.ne.jp/wp/blog/2013/10/15/post-2031/
このサンプルはどや
SafariとChromeで動いたよ
0461デフォルトの名無しさん
2015/12/21(月) 01:54:42.80ID:KZlVjUzRpostMessageって送りたい方のwindowオブジェクトに対してするんだからな
example.comからexampe.netに送りたいなら
example.comのページでexample.netのwindowオブジェクトを取得する必要がある
window.open()の返り値とかで
0462デフォルトの名無しさん
2015/12/21(月) 08:54:44.10ID:kPgfKzUvレスありがとうございました。
確かにこのサンプルではpopupで開いたウインドウに送信できました。
でも逆方向に送る事は出来ないのでしょうか?
>>461さんの指摘のように、popup側で送信先windowのオブジェクトを取得する必要がありますよね?
0463デフォルトの名無しさん
2015/12/21(月) 11:26:56.86ID:MBLRXv9vwindow オブジェクトを送れば逆方向も出来るのでは?
0464デフォルトの名無しさん
2015/12/21(月) 16:05:08.73ID:3jMeB42X呼び出し元はparentで取れるだろ
0465デフォルトの名無しさん
2015/12/21(月) 16:51:10.15ID:y6KenWXUwindowオブジェクトを取るのが目的ではないだろ
window.hoge でグローバル変数にして送れ、といいたいのか?
0466デフォルトの名無しさん
2015/12/21(月) 16:53:35.70ID:y6KenWXUwindowが取れれば送れるという事か
0467デフォルトの名無しさん
2015/12/21(月) 19:02:28.07ID:kPgfKzUvその後、試したのですが逆方向は出来ませんでした。
もしやり方が分かれば教えて下さい。
0468デフォルトの名無しさん
2015/12/21(月) 19:20:19.09ID:KZlVjUzRonmessageのイベントオブジェクトのsourceに呼び出し元のwindowオブジェクトが入っている
onmessage = function(e) { e.source.postMessage() }で返せるわけ
0469デフォルトの名無しさん
2015/12/21(月) 21:59:57.58ID:kPgfKzUvありがとうございました。
一週間くらい悩んでいた問題が解決しました。
0470デフォルトの名無しさん
2015/12/22(火) 17:34:29.31ID:cFhaBXKcvar obj = {key: value};
var obj = {'key': value};
どちらも同じだと思いますが、どちらが良いのでしょうか?
0471デフォルトの名無しさん
2015/12/22(火) 18:11:28.69ID:pcMCuDsy0472デフォルトの名無しさん
2015/12/22(火) 18:33:30.15ID:YodBadyd0473デフォルトの名無しさん
2015/12/22(火) 22:46:53.61ID:lJMFjOKoお前はいつもJSONを手書きしてるのかよ?
>>470
圧縮の技術の一つでよく出てくるパターンを短いデータに置き換えるというのがある。
それと一緒でどちらも同じ意味で可読性も変わらないのであれば、
よく使うものほど短い書き方にするのが良い。この場合は''がないほうが可読性高いしね。
0474デフォルトの名無しさん
2015/12/23(水) 09:05:06.94ID:n7KlQu9D0475デフォルトの名無しさん
2015/12/23(水) 09:12:12.40ID:Bay2doKJsleep(2000) // 2秒休む
とか出来ますか?
0476デフォルトの名無しさん
2015/12/23(水) 11:30:09.76ID:qlqX4cczアホな実装しかできない
0477デフォルトの名無しさん
2015/12/23(水) 11:31:18.08ID:Bay2doKJアホな例をお願いします。
0478デフォルトの名無しさん
2015/12/23(水) 16:16:56.03ID:VsO+5z2Pvar now = Date.now();
while(now + 2000 > Date.now()){}
setTimeoutとpromise使ったほうが絶対いいよ
0479デフォルトの名無しさん
2015/12/23(水) 16:22:58.88ID:v4yXy6MLお前がアホな実装しか出来ないのは分かったが
そういう話をしているんじゃない。
0480476
2015/12/23(水) 18:28:18.45ID:qlqX4cczfunction sleep (delay) {
var date = new Date;
while (new Date - date < delay);
}
sleep(2000);
console.log('test');
どう考えても setTimeout() を使った方が良い。
同期処理で sleep() を実装しようとする設計がアホ。
0481デフォルトの名無しさん
2015/12/23(水) 18:32:35.22ID:Bay2doKJだったらその例を教えてけろ
0482デフォルトの名無しさん
2015/12/23(水) 18:43:12.65ID:MksdZDM7https://developer.mozilla.org/ja/docs/Web/API/Window/setTimeout
0483デフォルトの名無しさん
2015/12/23(水) 18:46:15.21ID:Bay2doKJ分からないんです。
settimouotでsleep実装出来ますか?
0484デフォルトの名無しさん
2015/12/23(水) 18:53:15.76ID:qlqX4ccz出来ない。アホな実装しか出来ないといっただろう。
素直に非同期処理を使え。
0485デフォルトの名無しさん
2015/12/23(水) 19:16:39.46ID:fUoT5vqIどう考えても sleep の方が使いやすいときがあるが。
0486デフォルトの名無しさん
2015/12/23(水) 19:24:23.93ID:rBnsJIlR0487デフォルトの名無しさん
2015/12/23(水) 19:33:10.34ID:fUoT5vqI0488デフォルトの名無しさん
2015/12/23(水) 19:44:06.77ID:qlqX4ccz0489デフォルトの名無しさん
2015/12/23(水) 19:51:12.02ID:fUoT5vqIお前らこの単純な事実を知らないのか?
0490デフォルトの名無しさん
2015/12/23(水) 20:00:54.54ID:tFvVWMos0491デフォルトの名無しさん
2015/12/23(水) 20:04:35.74ID:qlqX4ccz同期処理なんだから後述処理は完全にブロックされるだろ
HTMLパースも同期処理なのを知らんのか
0492デフォルトの名無しさん
2015/12/23(水) 20:26:19.51ID:MksdZDM7他言語ではなくてJavaScriptでどうなるかを考えたら?
0493デフォルトの名無しさん
2015/12/23(水) 21:14:21.37ID:fUoT5vqI>>491
> HTMLパースも同期処理なのを知らんのか
知ってるよ。だからHTML上に<script src=>やると云々、書く場所は考えろってやつだろ。
ただ WebWorker を使った場合は sleep(0) があった方が綺麗に書けるんだよ。
(とはいえsleep(0)ならasync/awaitで問題ないが)
>>492
JavaScript はデタラメに仕様を拡張してきているのに、
なんで sleep を採用しないのか不思議だと言ってるんだよ。
0494デフォルトの名無しさん
2015/12/23(水) 23:12:11.47ID:v4yXy6MLブラクラに使われるからだよ。
sleep 100000000とかやられたら画面が固まるだろ。
そりゃブラウザによっては固まらないようにするかもしれないが、
それはそのブラウザの独自機能。タブも独自起動。
タブもウインドウもないブラウザだって有るわけで、
画面が固まったら何もできなくなるだろ。
0495デフォルトの名無しさん
2015/12/23(水) 23:18:01.50ID:fUoT5vqIawait は Promise を受け取れるし、 ---(A)
Promise 内で SetTimeout できるようなので。 --- (B)
(B)についてはMDNのサンプルコードで確定。
(A)については仕様の頭を読んで他サイトの記述を見る限り多分出来そう。
(ただし全部読んでないので間違っているかも。)
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Promise
http://tc39.github.io/ecmascript-asyncawait/
それにしても、 sleep を意地でも実装しない理由って無いと思うよ。
async/await 入れた時点で function 途中でのスイッチが行われるのだから、
sleep と可読性の損なわれ方は変わらないはず。
と思っていたが
>>494
> ブラクラに使われるからだよ。
なるほどこれはあるかもな。
しかしそれを言うなら、あっちのスレの話題で今更ながらFC2ブログがJS自由なのを知って、
ちょっと寒気がしてます。
0496デフォルトの名無しさん
2015/12/23(水) 23:29:03.26ID:fUoT5vqIすまん訂正。思いっきり間違えた。
> > ブラクラに使われるからだよ。
> なるほどこれはあるかもな。
スピンロックの sleep ならブラクラになるが、通常のサスペンドロックの sleep ならブラクラにはならない。
俺が入れてもいいのではないかと思っているのは当然後者。
だからこれは当てはまらない。
0497デフォルトの名無しさん
2015/12/24(木) 00:32:33.07ID:vhy24jAmだからそれはJavaScriptの仕様で決めることは出来ないんだよ。
搭載したいと思うなら、ブラウザが勝手に搭載すればいいわけで、
実際サーバーサイドJavaScriptでは、sleepはブラウザに相等する
実行環境が提供している。
0498デフォルトの名無しさん
2015/12/24(木) 00:54:43.31ID:eesjQKa20499デフォルトの名無しさん
2015/12/24(木) 01:10:40.88ID:vhy24jAm> スピンロックの sleep ならブラクラになるが、通常のサスペンドロックの sleep ならブラクラにはならない。
あと、スピンロックかどうかは関係ない。
それはJavaScriptはWeb Workerを作って明示的に別スレッドを作らないかぎり
(悪意のあるブラクラサイトがわざわざ別スレッドを作るわけがない)
シングルスレッドなのだから、スピンロックでもサスペンドロックでもブラクラになる。
スピンロックだとCPUを食うというだけの話。
0500デフォルトの名無しさん
2015/12/24(木) 01:33:21.10ID:ij3qlZ6Aフリーズしなくすれば良いだけ
0501デフォルトの名無しさん
2015/12/24(木) 01:48:04.37ID:vhy24jAmだからフリーズしなくなる機能をつけるのは
ブラウザの仕事であって、JavaScriptではないということ。
例えばalertなんかOK押すまでsleepするのと同じなんだが、
今のブラウザはalertでても、ページ内の操作は当然無理だが、ウインドウは触れるだろ。
でもalertはブラクラに使われていたんだよな。後からブラウザが対策した。
もちろんalert等はブラウザの機能であってJavaScriptの機能ではない。
alertのようなブロックする関数は今の考え方では失敗と言うべきだろう。
0502デフォルトの名無しさん
2015/12/24(木) 02:09:31.15ID:3SycHtsF何があってもブロックさせないという仕様は、確かにブラウザには必要なのだろう。
ただ、sleep を await と同じ扱いにすればいいだけだろ。
I/Oとかは全面的に await でいいのは事実だけど、
sleepの方が使いやすい局面があるから昔から sleepガー という奴がいるわけで。
> だからそれはJavaScriptの仕様で決めることは出来ないんだよ。
> それはJavaScriptはWeb Workerを作って明示的に別スレッドを作らないかぎり
> シングルスレッドなのだから、
これが出来ない理由にはならないんだよ。だったら await はどうなの?
await の所で他の function が実行できるんだよね?(仕様読んでないけど)
それは別スレッドを作っているのと見た目は同じだろ。
内部的に糖衣構文化してイベント待ちに自動的に切り換えてくれているのなら、
sleep も同様にそう作り込めばいいだけなんだよ。
await を導入している時点で、sleep が導入できない理由はないんだよ。
sleep は await のタイマイベント待ち版でしかないんだから。
(通常の await は I/O 待ち)
0503デフォルトの名無しさん
2015/12/24(木) 04:48:17.07ID:vhy24jAmawaitってこれだろ? ES7ではいるやつ。
> async function countUp() {
これを実装するには、asyncという構文にJavaScriptが対応しないと実現できないんだが?
お前が言ってるのは、今のJavaScriptでは実現不可能。なぜなら対応してない機能が必要だから。
という事実に対して、最初からJavaScritpはasyncという文法に対応していれば
よかったんだってってことだろ? たられば論な。
別の言い方をすれば、
問い なぜsleepに対応してないのか?
答え asyncに対応してないから。
ってことなんだが?
将来サポートされる機能で実現可能だと言われた所で、
今サポートしてない理由は、今のJavaScriptでは実現不可能だからだろ。
どんなにsleepを作りこんだ所で、asyncは実現できない。
それともお前が言ってる "作り込み" っていうのはBabelみたいにES7をES5とかに変換するツールを
JavaScriptで作って、実行時にソースコードを変換するようするって話か?
0504デフォルトの名無しさん
2015/12/24(木) 05:00:33.39ID:vhy24jAmasyncやwaitがあった所で、JavaScriptにはタイマーがないんだよ。
JavaScriptにファイルアクセス命令がないようにタイマー命令もない。
それはJavaScriptにタイマーは含めないと決めたから。
awaitやasyncがあった所で、タイマーが存在しなければ、
ビジーウェイトしないかぎり、実現不可能。
それがawaitやasyncを入れても、タイマーを入れない理由。
そういうのはJavaScriptではなく実行環境が提供すべき機能で
JavaScriptには入れるべきではないという考えから入れていない。
0505デフォルトの名無しさん
2015/12/24(木) 05:09:19.58ID:5dQYZNYisleepを実現するのに必要なタイマーは構文糖じゃないからな。
JavaScriptに新しい機能を追加しようという話になってる。
タイマーを一般化すると割り込みとかシグナルになるわけだけど
JavaScriptに割り込みやシグナルにアクセスする機能を追加するって話になる。
タイマーは構文糖じゃないから取り入れられないんだよ。
0506デフォルトの名無しさん
2015/12/24(木) 05:31:32.68ID:5dQYZNYi> (通常の await は I/O 待ち)
await はI/O待ちではない。
I/O待ちするのはブラウザを含めた実行環境の仕事
JavaScriptは、基本的にI/Oを操作しない。
(近いのはconsole.logぐらいだがこれもコンソールに
出すってだけで出す場所は定義されてない)
0507デフォルトの名無しさん
2015/12/24(木) 07:16:17.38ID:YlRH46yJsleep中にHTMLや変数かわるとかさ考えてないやつでてくるだろう
考えなくていいのがいいところだし
するとしたら既存のjavascriptには影響なしで理解してないやつには使いにくい機能追加だな
0508デフォルトの名無しさん
2015/12/24(木) 07:34:18.13ID:Y5sNONvqES7でスレッド制御できるようになるからsleep出来るじゃん。
参考:http://js-next.hatenablog.com/entry/2015/09/30/225251
それと非標準では昔からいろいろある。
0509デフォルトの名無しさん
2015/12/24(木) 07:54:24.80ID:xUUCJBux0510デフォルトの名無しさん
2015/12/24(木) 09:05:14.13ID:kShQ38jb0511デフォルトの名無しさん
2015/12/24(木) 12:37:48.96ID:lTmsChXg将来搭載される機能使えば、実現可能だからって、なんで今sleepないの?と
聞かれてもな。今は実現不可能だからに決まってるだろ。
そもそもWorkerはブラウザのAPIであってES7じゃない。
ESにasync/awaitという構文が追加されたのはただの構文糖だからで実現可能だったからで、
構文糖で実現不可能なタイマーへのアクセスは、将来にわたってもできることはないだろう。
ファイルアクセスなどのI/Oに対応しないのと同じ理由で、
ESの範囲ではタイマーを扱うべきではないと考えているはず。
ブラウザの機能の話であれば、それはsetTimeoutがあるから十分じゃん?
setTimeoutがasyncを使った実装になってないのは、今のJavaScriptは対応してないからだ。
しかも、それはブラウザのAPIの話。async構文を使ったsleepを実装しろ!というならば
ブラウザのAPIに対してだろう。サーバーAPIはすでにあるわけだから。
0512長くなったから分割
2015/12/24(木) 12:39:45.82ID:lTmsChXg>>503の例のように、await sleep(1000); というawait構文を使った形になる。
そしてasync、awaitはただのPromiseの構文糖なのだから、Promiseを返す
関数であれば、ES7でasync、awaitを使って書くことができる。
だから、Promiseを返すバージョンのsetTimeoutとして、
sleep(1000).then(function() { ・・・ }) みたいな使い方をする
ブラウザのAPIが新しく作られることは有るかもしれない。
そして、これならば今のブラウザでも動く。
0513デフォルトの名無しさん
2015/12/24(木) 12:46:55.90ID:lTmsChXg> ちょっと考えてみたが、 async/await と Promise で実装できそうな気がする。
Promiseというものが最初にできて、それを "簡単に記述できるようにしただけ" のものが
ES7に追加されることになった新たな文法のasync/awaitなんだが。
これは新しい文法なんだから、Promiseで "実装" することは出来ない。
Promiseを返すように作られた関数があって、
それを使う時の書き方の一つでしかないよ。
0514デフォルトの名無しさん
2015/12/24(木) 12:56:26.66ID:YlRH46yJ0515デフォルトの名無しさん
2015/12/24(木) 13:30:58.58ID:lTmsChXg0516デフォルトの名無しさん
2015/12/24(木) 14:21:38.37ID:+OAEjoT0だったら今でもsleep出来るんじゃないか?
0517デフォルトの名無しさん
2015/12/24(木) 16:22:07.01ID:lTmsChXgPromiseはJavaScriptでかけるが、
sleepを実装するのに必要なタイマー機能(割り込みやシグナル)が
JavaScriptでは使えないんだよ。
これらはブラウザかnodeのようなJavaScript実行環境が
提供するしか無い。
0518デフォルトの名無しさん
2015/12/24(木) 16:50:27.79ID:QHPA1t+Qこの言語はまだ初心者で経験ないけどこれからやるために。
サクサク動くの希望。
調べたらVisual StudioでもEclipsでもできるらしいけど、本当にみんなこんなのでやってるの?
0519デフォルトの名無しさん
2015/12/24(木) 16:57:32.84ID:lTmsChXgJavaScript含めた動的言語は、言語の仕様からIDEを使っても
さほど大きな開発サポートは得られないので、諦めてテキストエディタ使ってるよ。
静的言語ならIDE使うとすごく便利なのにな。
0520デフォルトの名無しさん
2015/12/24(木) 17:00:13.00ID:QHPA1t+Qひょっとしてメモ帳?
でもちょっと本格的になったら無理じゃない?
コード入力で単語を自動選択ポップアップすらないと。
0521デフォルトの名無しさん
2015/12/24(木) 17:01:10.52ID:lTmsChXgメモ帳なわけがないだろう。
まあ単語の自動選択は使ってないがな。
これも完璧じゃないので。
0522デフォルトの名無しさん
2015/12/24(木) 17:10:04.57ID:QHPA1t+Qじゃなにつかってるの?
0523デフォルトの名無しさん
2015/12/24(木) 17:57:12.05ID:k1/8SWkCES7と言ったのはAtomicsのことだよ。
そしてsleepは不要で合わなくてそのような機能は実装されることがないというような論に対して言ったんだよ。
AtomicsAPIは立派なスレッド制御のための新しい機能で、糖衣構文の類ではない。
ESの範囲で扱うべきだと考えられているから存在している。
0524デフォルトの名無しさん
2015/12/24(木) 18:06:22.44ID:lTmsChXg何の話してるの?
俺が言ってるのは、タイマーはES7の機能として実装されないから
sleepはES7の範囲内では無理って話してるんだが。
スレッドあってもsleepはビジーウェイト以外では
実現できないんだよ。
0525デフォルトの名無しさん
2015/12/24(木) 18:09:16.10ID:lTmsChXg名前だけ知ってて、基礎ができてないんじゃないか?
0526デフォルトの名無しさん
2015/12/24(木) 21:52:25.60ID:bR1u9BVCどうでもいいがWScriptにはそのまんまsleepがあるな
0527デフォルトの名無しさん
2015/12/24(木) 23:10:08.57ID:RAVtKX98Atom.ioのエディタとChromeの開発者ツールかな
一応、打ち込んだ変数名の推測表示はしてくれる
0528デフォルトの名無しさん
2015/12/24(木) 23:16:17.63ID:QHPA1t+Qなるほどありがとう
もしChromeの使うならとくになにもインストールしなくてもついてるやつですか?
0529デフォルトの名無しさん
2015/12/24(木) 23:31:57.10ID:RAVtKX98Chromeに最初から付いてる、メニューから使えるやつ
開発中は.min.jsじゃなくて.jsを使うんだぞ
ブレークしてウォッチすればライブラリにどんなメソッド有るかとか見えるし、中まで追っていける
0530デフォルトの名無しさん
2015/12/25(金) 09:17:26.40ID:tK87TiQAsleepはスレッドの停止であって、
コルーチンの留保とはぜんぜん違う
0531デフォルトの名無しさん
2015/12/25(金) 10:00:37.15ID:/jFYFGFJ香ばしワロタ
0532デフォルトの名無しさん
2015/12/25(金) 10:12:54.99ID:tK87TiQAビジーウェイトじゃないし本来wakeとセットで有用なものでもあるからね。
0533デフォルトの名無しさん
2015/12/25(金) 17:56:50.40ID:MWeRnh5+http://peace.2ch.net/test/read.cgi/hp/1448293871/l50
0534デフォルトの名無しさん
2015/12/25(金) 20:46:43.80ID:mCWQHNVj0535デフォルトの名無しさん
2015/12/25(金) 22:39:08.53ID:XoBMqT50なるほどありがとう。
ところでChromeでコードを書く場所はどこにあるの?
F12押したときに出てくる画面の上部のタブのElementsやSourcesをクリックしてコードを見ても
これは見るだけはできても編集して書き込むことができない。
0536デフォルトの名無しさん
2015/12/25(金) 23:46:42.58ID:OVXWXNxbAtomやVisualStudio CodeなどエディタでHTML/CSS/JavaScript/PHP/Curlのテスト用コマンド などを書いて、
クライアントはChromeとかIEとかスマホとかいろいろ試すわけですよ
ttp://tech.nitoyon.com/ja/blog/2015/11/20/try-vscode/
書いて置いておくのはWebサーバのある場所
読み込んで動くのはクライアントに居るChromeやIE
だから、Chromeでは見られるけど編集できないのが自然なわけ
VisualStudioならWindowsフォーム書いてその場で動かせるのに、wwwってめんどくさいですね?
そしたら ttp://Electron.atom.io てのを調べてみよう
0537デフォルトの名無しさん
2015/12/26(土) 04:58:55.05ID:56T1awouサブスレッドとの同期等
0538デフォルトの名無しさん
2015/12/26(土) 05:02:09.76ID:h8/CI80Sそれは答えじゃない。
何が嬉しいの?っていうのはユーザーにとっての話だ。
嬉しいこと(答え)ではなく、何ができるのかしか言っていない。
サブスレッドと同期ができて人は何が嬉しいのか?
それが求められている答えだ。
0539デフォルトの名無しさん
2015/12/26(土) 16:51:32.69ID:Dx/LxDfY例えばメインスレッドでは同期処理と同じような感覚でマルチスレッドを使う関数を使える。
それだけならawaitでもいいじゃんと思うかもしれないが、
sleep/wakeはマルチスレッドプログラミングに付き物の競合問題も解決してくれる。
まあでもWebに関しては、現状の状態を鑑みるに、別にサブスレッドを束ねるマスタースレッドを作って、
UIスレッドでは下手にsleepしたりしないほうが良いと思う。
DOMとJSとのイベントループが絡まっているため、現状の仕様というか素直な実装による挙動だと、
JSでsleepするとUIも固まってしまう。
だから今のところの現実解は別個にマスターワーカーを作り、UI側とのやり取りはasync/await
ワーカー同士はsleep/wakeでするのがベストだと思われるがどうか。
0540デフォルトの名無しさん
2015/12/26(土) 17:02:03.43ID:h8/CI80S今はwakeの話はしていない。たんなるsleep(秒数)だ。
これはJavaScriptの範疇じゃないってだけ。
ブラウザを含めた実行環境が提供すればいいだけの話。
実際にサーバーサイドJavaScriptは実行環境が提供している。
0541デフォルトの名無しさん
2015/12/26(土) 19:01:28.66ID:AaVX3RoX0542デフォルトの名無しさん
2015/12/26(土) 20:25:26.24ID:EPUewKItそこに実ファイルドロップして、右クリで追加したら触れるようになるはず。
0543デフォルトの名無しさん
2015/12/26(土) 21:10:28.86ID:Sgv0r5+yfunction func1(int) {
...
}
func1(10);
みたいなシンプルなデータを渡す場合と、
function func2(win) {
...
}
func2(window);
みたいに、大きなオブジェクトを渡す場合とで、処理速度に差が出ますか?
0544デフォルトの名無しさん
2015/12/26(土) 21:56:15.94ID:lqDTULGo想像しているような差はないと思っていいよ
0545デフォルトの名無しさん
2015/12/27(日) 01:18:53.59ID:LwSAm1fHただし64bit環境と最新のエンジンではその限りではない。
0546デフォルトの名無しさん
2015/12/27(日) 04:25:15.40ID:t0JLu8LKangular.module('App01',[依存モジュール]);
angular.module('App01',[別の依存モジュール]);
2回目ので最初のを上書きしてしまうのだった
ただ単に最初のコントローラが消えてしまうのでエラーも何も出ないし
0547デフォルトの名無しさん
2015/12/27(日) 04:53:58.23ID:Y7IK7QLW気のせいかもしれない。
0548デフォルトの名無しさん
2015/12/27(日) 05:18:31.87ID:zCo3FkO+angular.module('myApp',[サブ1,サブ2…]);
ルーティングやコントローラで
angular.module('サブ2',[依存モジュール])
とすることにしました。
追加のたびにapp.js書き換えになるけど単体テストがやりやすそうだし
0549デフォルトの名無しさん
2015/12/28(月) 12:18:40.57ID:MpvL/SZu0550デフォルトの名無しさん
2015/12/28(月) 19:56:19.32ID:aQp7bRaKJavascriptはどうやって書いてますか?
0551デフォルトの名無しさん
2015/12/28(月) 21:46:31.78ID:VijL79y/そんな会社をやめる
0552デフォルトの名無しさん
2015/12/28(月) 21:53:35.78ID:rsmzLifYJavaScript に権限など必要ない
0553デフォルトの名無しさん
2015/12/28(月) 22:29:37.56ID:aQp7bRaKまあ転職予定だ
>>552
いや開発環境としてのエディタがインストールできないという意味だ。
もしかしてみんなこんなときメモ帳で書いてるの?
0554デフォルトの名無しさん
2015/12/28(月) 22:34:48.53ID:qCU45Dy7Webアプリ使おう
0555デフォルトの名無しさん
2015/12/28(月) 22:40:34.12ID:rsmzLifY仕事で必要なら権限がある人に申請を出すだけでいいのでは?
0556デフォルトの名無しさん
2015/12/28(月) 22:52:13.74ID:mtPLZTEK0557デフォルトの名無しさん
2015/12/28(月) 23:03:07.01ID:aQp7bRaKそれはどのようなものですか?
>>555
仕事て使うほど大げさではなく
ふだんやることのほんの一部を自動化するだけなので
なぜチームでオレだけが必要か説明できないよ。
>>556
それはzipをダウンロードすることだと思うけど
勝手なダウンロードも監視&禁止されてるのよ。
いっかいそれで警告を受けたからもうできない。
0558デフォルトの名無しさん
2015/12/28(月) 23:27:51.67ID:VijL79y/"作業効率が著しく低く"、こんな環境ではまともな仕事ができないから
って言ってあげてねw
0559デフォルトの名無しさん
2015/12/28(月) 23:29:15.43ID:VijL79y/なるほど、つまり○○さんが、
他人の仕事の邪魔をしているわけですね。
って言ってあげてねw
0560デフォルトの名無しさん
2015/12/28(月) 23:30:21.82ID:aQp7bRaK0561デフォルトの名無しさん
2015/12/28(月) 23:34:13.51ID:VijL79y/あとは自由にアプリインストールし放題だけどなw
パッケージマネージャーで入れるものはすべて
Linuxに含まれているものだからねw
0562デフォルトの名無しさん
2015/12/29(火) 02:10:16.17ID:q3r6ryfwWebのエディタだよ
JavaScript エディタ Webでぐぐったら色々出てくると思うよ
0563デフォルトの名無しさん
2015/12/29(火) 10:23:17.64ID:u34Ypxabそれはわりと標準的な開発手法でしょうか?
0564デフォルトの名無しさん
2015/12/29(火) 10:25:49.11ID:+waEXqznNitrousとか色々あるのな最近
0565デフォルトの名無しさん
2015/12/29(火) 11:13:02.88ID:NA8hl+pp標準的になりつつある
0566デフォルトの名無しさん
2015/12/29(火) 11:40:30.88ID:p61NlkkE0567デフォルトの名無しさん
2015/12/29(火) 12:29:10.19ID:0EeRezxIzipのダウンロードが許可されないのにWebアプリやクラウドを使う事は許可されるの?
もう少し、環境(OS、インストールされているアプリ)や「許可されるボーダーライン」を開示しないと誰も答えられないと思う。
0568デフォルトの名無しさん
2015/12/29(火) 13:54:31.05ID:S7hPg+te実機はどうせライセンスの関係からLinuxにならざるをえないんだから、
ローカルにはLinuxを仮想マシンで入れたほうがいいと思う。
0569デフォルトの名無しさん
2015/12/29(火) 14:46:39.92ID:5o0CYWec仕事をするため、開発ツールを下さいと言う。
そしたら、会社既定のツールをくれるはず
ツールをくれない、または使いにくい場合には、
会社と交渉すればよい
人間は、要望と現実のはざまに生きている。
これはどこの会社でも、常に起きていること。
コマツなどがやっている、持続的なカイゼン
一つ要望書を書くと、500円くれる会社もあるぐらい
0570デフォルトの名無しさん
2015/12/29(火) 20:44:06.13ID:bXnVWHmyそれをクラウド活用とか一番危険な方法なんじゃね
素直に担当の者に文句言えよ
0571デフォルトの名無しさん
2015/12/30(水) 03:24:06.22ID:1yiA+igC今は業務系の軽いの(カタログメンテと提供とか)を、
クライアントはBootstrapとAngularJS
サーバはPHPでREST応答するだけ
で書いてるんすよ、
SPAで一機能がViewとコントローラーとPHPで分けられて分かりやすいし今風の画面に出来るので割と満足
jQueryのスクリプトも消えたし
サーバもNode+Sailsに移行するのってどうかな?
まだ慌てる時間じゃないですかね
ややこしいSQLも多いしなー
0572デフォルトの名無しさん
2015/12/30(水) 07:35:07.93ID:VhbZvOcQまあSWを単なるキャッシュプロキシとしか使わないのなら既存のアーキテクチャを弄らないでいいし、
SPAを半分やめる(SW側でHTML生成)と言う手ならCGIと相性もいい。
だが本当にSPAでやっていくつもりならNodeとかの方が相性がいいよ。
0573デフォルトの名無しさん
2015/12/31(木) 04:04:36.44ID:Ncwbd3/V0574デフォルトの名無しさん
2015/12/31(木) 04:08:01.18ID:GyVEm/AS0575デフォルトの名無しさん
2015/12/31(木) 04:08:26.31ID:GyVEm/AS0576デフォルトの名無しさん
2015/12/31(木) 14:30:23.50ID:CH+I0c4Zある関数を実行したいのですが、そういう場合、全部結果が得られた
時点でイベントを発生させるなどの方法はありますか?
0577デフォルトの名無しさん
2015/12/31(木) 14:46:12.72ID:YSMAjmpZあるよ
0578デフォルトの名無しさん
2015/12/31(木) 15:14:27.69ID:CH+I0c4Z先生、教えて下さい
0579デフォルトの名無しさん
2015/12/31(木) 15:25:56.96ID:FyuHG/9Y0580デフォルトの名無しさん
2015/12/31(木) 15:39:13.53ID:CH+I0c4Zプロミス無しの方法論教えてください
0581デフォルトの名無しさん
2015/12/31(木) 15:43:03.00ID:YSMAjmpZあるけど、promiseが楽やで
0582デフォルトの名無しさん
2015/12/31(木) 15:46:45.00ID:CH+I0c4Z先生教えてください
0583デフォルトの名無しさん
2015/12/31(木) 16:05:17.19ID:CH+I0c4Z早く教えてくれよ。明日お客さんに提出なんだ。
0584デフォルトの名無しさん
2015/12/31(木) 18:30:48.73ID:D5b/7JR8普通にやればadodb.ConnectionのDriverを指定するところでエラーが出て困ります。
いい方法はございませんか?
0585デフォルトの名無しさん
2015/12/31(木) 18:53:58.39ID:P+3Yt6u7function trigger() {
; var i = 0;
; return = function() {
; i++;
; if(i === 5) {
; }
}
0586デフォルトの名無しさん
2015/12/31(木) 18:57:55.23ID:P+3Yt6u7function trigger() {
var i = 0;
return function() {
i++;
if(i === 5) {//ここにやりたい処理を書く}
}
}
んで非同期処理の中でtrigger()する
0587デフォルトの名無しさん
2015/12/31(木) 19:42:40.92ID:CH+I0c4Z師匠、ありがとうございました。
0588デフォルトの名無しさん
2016/01/01(金) 00:12:59.57ID:Pwb+YVLmAngularJS UI BootstrapのDatePicker
2016-01-01 が入って来ると、GMTの2016-01-01 00:00と解釈して勝手にローカルタイムに変換すんのよね
日付けだけの場合はオフセットを引いて表示
DBに時刻も入ってる場合にはオフセットを足してGMTとして表示か足さないでローカルタイム変換表示か選ぶ
としてなんとかしました
0589デフォルトの名無しさん
2016/01/01(金) 10:10:25.79ID:sVrrx3Fuどういう方法が一番スタンダードで簡単ですか?
0590デフォルトの名無しさん
2016/01/01(金) 11:19:25.44ID:8/Gx7/XdとりあえずPHPで、データベースから読み込んでprint_rするのを書こう
出来たら、結果をjson_encodeして出力するようにする
JavaScript側では、検索条件が有るならクエリ文字列で
/reader.php?name=John&address=Tokyo
とか作って渡す、Ajaxを使う
戻って来たら、JSON配列からテーブルに書き出す
Ajaxと書き出す処理はjQueryをまず使ってみよう
こういう動作をまとめて書いておいてくれるフレームワーク、とかも有る
0591デフォルトの名無しさん
2016/01/01(金) 11:39:09.14ID:sVrrx3FuPHPとか知らないですが、上記のやりたいことだけやりたい場合はちょっとそこだけ調べればできますか?
あとPHPはサーバー側になにかが入ってないとできないようなことはありませんか?
0592デフォルトの名無しさん
2016/01/01(金) 11:44:10.49ID:8/Gx7/XdPHPとjQueryはぐぐれば山ほど参考は出てくるよ
レンタルサーバーでPHPが入って無いほうがおかしいくらいな普及度だし。
自前のサーバーでPHP入って無いならもちろん入れないとあかん
0593デフォルトの名無しさん
2016/01/01(金) 16:20:39.94ID:v7+Qi1TjJavaScriptで直接SQL文を発行するならnode.jsを使うのが現実的じゃない?
PHPにSQL文を渡して実行させるなんて恐ろしくて出来たもんじゃない
0594デフォルトの名無しさん
2016/01/01(金) 16:49:04.54ID:X239jc0xどのあたりが恐ろしいんですか?
0595デフォルトの名無しさん
2016/01/01(金) 23:50:11.72ID:Pwb+YVLmSQLインジェクション
でぐぐれ
0596デフォルトの名無しさん
2016/01/02(土) 01:10:06.93ID:BVEMaZcPあほらし
0597デフォルトの名無しさん
2016/01/02(土) 12:59:44.44ID:olyp4gRNそういう感想が脆弱性を生み出すんだろうね
0598デフォルトの名無しさん
2016/01/02(土) 14:12:57.25ID:VM0jeeLd0599デフォルトの名無しさん
2016/01/03(日) 12:14:56.36ID:T8rePiVl0600デフォルトの名無しさん
2016/01/03(日) 13:15:08.98ID:zEXG4Enn俺って天才やな
0601デフォルトの名無しさん
2016/01/03(日) 17:21:56.94ID:GxBav+6o>>595
0602デフォルトの名無しさん
2016/01/03(日) 17:26:14.18ID:hRXTiNB3ネタをネタと分からないつまらない奴
0603デフォルトの名無しさん
2016/01/03(日) 22:29:46.84ID:fYrA7DHT0604デフォルトの名無しさん
2016/01/04(月) 00:57:59.87ID:4k++bHeCVB.NETから来たから分かりやすくていいわ
どっかにng-click=なんちゃら、と書いて
JSで$scope.なんちゃら=function(){} と書けば動くし
ng-repeatはaspxのリピーターだし
上に検索条件
中段に見つけたデータのテーブル表示、編集選択ボタン、ヘッダをクリックでソート
下部に編集用フォーム
を一画面に並べたのが作れました
これで今のシステムの99%は作れるw
0605デフォルトの名無しさん
2016/01/04(月) 04:34:30.60ID:EecBIAlc今年勉強するなら間違いなく2の方をした方がいいよ
0606デフォルトの名無しさん
2016/01/04(月) 04:57:49.62ID:kstA/+8gAngularJSって一言で言うと何よ?
0607デフォルトの名無しさん
2016/01/04(月) 06:47:18.12ID:4k++bHeC一言で言うと…なんだろ?
HTMLに書いたng-model とかの記述を拾って、JSに書いた同じ名前の記述と紐付けてくれます
ng-controller指定するとJSの.controller(){ } を呼んでページの初期化が動く
ng-model=変数名 と書いておくとJSで$scope.変数名で読み書き出来る
ng-click=関数()と書いておくとJSに置いた関数呼んでくれる
HTML、JS、RESTで既存のデータモデル、の組み合わせが綺麗に出来ました。
ascxとascx.vbより、コードの独立性が高くていいね
0608デフォルトの名無しさん
2016/01/04(月) 10:12:37.61ID:kstA/+8gありがとうございました。
でも全く理解出来ませんでした。
勉強します
0609デフォルトの名無しさん
2016/01/04(月) 11:29:42.74ID:IiCTgRqing は、A「ng」ularJSから来てるのね
HTMLにng-modelとか無いでしょ、ブラウザには解釈されないけどこれを書いて置くとangular.jsが読んで動くわけ
Angularはコードの量が少ないしhtmlもJavaScriptも「汚く」ならない
ttp://jsfiddle.net/yoshiokatsuneo/pqku2r33/
例えばこのサンプル、JavaScriptを削除してもそのまま見えるし、JavaScriptはHTMLに関係無く動かせる
山田祥寛の本も出てるから買うといいです
0610デフォルトの名無しさん
2016/01/04(月) 12:43:41.52ID:MLQcDM5i0611デフォルトの名無しさん
2016/01/05(火) 00:50:25.31ID:XibfkEF5・状況
jquery2.1.4を使ってるんだが、
アクセスする度にstats.jsとか言うのを外部に取りに行ってるみたいで、
これがものすごく重くて困ってる
http://www.dotup.org/uploda/www.dotup.org687590.jpg
・質問
1. stats.jsなるものは使った覚えがない
こやつは何者?jquery内のどこかで呼ばれてるものなのか?
2. もっと早くならないだろうか
0612デフォルトの名無しさん
2016/01/05(火) 04:07:49.44ID:KwXx/JetAngular2って、Reactっぽくなって行数めっちゃ増えそう
0613デフォルトの名無しさん
2016/01/05(火) 04:09:50.16ID:KwXx/Jetstats.js って、FPSを測るのに有ったかもしれないけどそれでもなさそう
URLの詳細とstats.jsの中身を貼るべき
0614611
2016/01/05(火) 20:59:35.77ID:GI5mEkb+https://cdnjs.org/track/stats.js?id=nocpfkkbaekckhcoekockfbidpcjgkbd&_=1451994803418
上記にアクセスするとここへ飛んでいく
https://cdnjs.org/track/stats2.js
CDNだから中身はアクセスすれば見れると思う
0615デフォルトの名無しさん
2016/01/05(火) 21:04:59.68ID:8YBsNj4p0616デフォルトの名無しさん
2016/01/05(火) 21:11:14.85ID:GI5mEkb+ここの
「jQuery 2.x」の段
「Download the compressed, production jQuery 2.1.4」のリンクから拾った
0617611
2016/01/05(火) 21:27:14.82ID:GI5mEkb+Fast Video Downloaderというchromeのアドオンが悪さをしていたらしい
https://github.com/cdnjs/cdnjs/issues/4716
お騒がせしました
0618デフォルトの名無しさん
2016/01/06(水) 06:10:36.03ID:wTjSz+NM日本の企業だけだけれどな
そんな馬鹿で非合理的なことやってる企業は。だから、IT後進国と言われる。
0619デフォルトの名無しさん
2016/01/06(水) 06:12:33.46ID:wTjSz+NMクタバレクズ。
開発するブラウザでくだらねえアドオン外すのなんか常識だろ。馬鹿かテメエhq
0620デフォルトの名無しさん
2016/01/06(水) 06:39:08.34ID:w/Ep0I7Y0621デフォルトの名無しさん
2016/01/06(水) 07:56:56.35ID:0w99DxxC>>611の画像にあるネットワークタブのjquery2.js:3 ってところをクリックしてみれば
もっと早く解決できたかも
0622デフォルトの名無しさん
2016/01/06(水) 15:26:08.27ID:vGBOMb2Bいやいや、お前にはかなわないよ
0623デフォルトの名無しさん
2016/01/07(木) 05:35:49.89ID:zrHJ1QBqにしたらjQueryさんはもうBowerに呼ばれなくなりました
さらば…
0624デフォルトの名無しさん
2016/01/12(火) 20:31:26.22ID:UuIlH2qEhttp://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11154639981
0625デフォルトの名無しさん
2016/01/13(水) 08:59:18.45ID:pBf6xnXg+ JavaScript の質問用スレッド vol.127 +
http://peace.2ch.net/test/read.cgi/hp/1448293871/l50
0626デフォルトの名無しさん
2016/01/18(月) 16:33:19.42ID:uV6VnB9gだと、
window.openで開いたウインドウには
otherWindow.postMessage(message, targetOrigin);
でメッセージを送れますが、
window.openで開いたのではなくて既に開いているウインドウに送る方法がありますか?
0627デフォルトの名無しさん
2016/01/18(月) 17:06:48.87ID:JIVU1rUewindowオブジェクトを参照する方法がないなら不可
0628デフォルトの名無しさん
2016/01/18(月) 17:31:30.43ID:uV6VnB9gそこを何とかお願いします
0629デフォルトの名無しさん
2016/01/18(月) 18:53:10.91ID:h+hAAYX10630デフォルトの名無しさん
2016/01/18(月) 21:38:06.24ID:uDL/tDz20631デフォルトの名無しさん
2016/01/18(月) 22:49:22.70ID:MDiwjdBN俺にお願いしても仕方ないだろ
何とかしたいなら新仕様策定案として提案してくるとかしないと
0632デフォルトの名無しさん
2016/01/19(火) 11:20:18.74ID:uFnS5WLW下記のオセロのJavaScriptのコメントにHTMLのアンカー(リンクのやつ)をやりたいのですが
<A href="aaa.html">文字列</A>とやっても表示されません。エスケープをしなくてはならないなど調べたのですがわかりませんでした。
どのようにすればよいでしょうか、よろしくお願いします。
<iframe width="650" height="400" frameborder="0" src="http://reversi-ai.appspot.com/v1.61/hamlite.html?
&size=L
&ai=off
&kifu=f5f6e6f4g7c5g4g6f3
&comment=0(ここにコメントを書く。<A HREF="aaa.html">表示されないよ〜</A>)
1(お助け願います)
"></iframe>
0633デフォルトの名無しさん
2016/01/19(火) 11:34:16.06ID:uFnS5WLWコメント内ではなくて、iframe外でもいいのでcommentの番号を認識してそれによってHTMLのリンクを
表示できるようにできたりますか?
0634デフォルトの名無しさん
2016/01/20(水) 07:48:44.52ID:z9F/arY70635デフォルトの名無しさん
2016/01/21(木) 21:52:19.07ID:p4489XVAHTMLインジェクションかよ。
まあ、とりあえず
・ダブルクオートのネストをやめる
・パラメータはencodeURIComponentしたものを渡す
でやってみたらどう?
0636デフォルトの名無しさん
2016/01/24(日) 05:36:30.63ID:jGkkqauOユーザからの入力を受け付けるものを考えたときに
・prompt()を使うと単純なテキストボックスしか置けず<select>的なものが使えないし画像も出せない
・画面全体に黒半透明レイヤーかぶせて真ん中にちっこい領域作って、とやると
スマホの画面位置・画面サイズ・拡大状況を考慮する必要がありそうだけどどこから手を付けたら
というところでどう作ればユーザに優しいものができるか悩んでいます
良い手、定番の手法などあったら教えて下さい
0637デフォルトの名無しさん
2016/01/24(日) 05:51:47.82ID:bvNYEnrPスマホにも対応したフォーム入力用ライブラリを使えばいい。
そういうことをしてくれるライブラリはたくさんある。
自分で作っていたらきりがない。
0638デフォルトの名無しさん
2016/01/24(日) 06:42:07.94ID:fqtpw7COhttp://alphasis.info/jquery-ui/
Web開発のことなら、web制作管理板で聞いた方がよいかも
0639sage
2016/01/25(月) 12:11:44.82ID:9Twnz5wr0640デフォルトの名無しさん
2016/01/25(月) 12:14:28.88ID:9SKlijLq俺はわからんけど
0641デフォルトの名無しさん
2016/01/25(月) 12:28:22.58ID:7W+F48NTposition: relative で表示位置をずらすなり、position: fixed で絶対位置を指定するなり、好きにすればいい。
としか、いいようがない(コードが出てないから)。
0642デフォルトの名無しさん
2016/01/25(月) 15:19:09.97ID:uoK+r6zmurlとhtmlファイルが一対一にすれば解決しそうな気もするのですが
(それぞれのファイルが部分的に読み込むかどうかの判定をして読み込む処理を持つ)
テンプレートを読み込んでテンプレートに対してurlごとの内容を別で読み込んでいるようなもの(つまりurlとファイルの数が一対一じゃないしそのurlで飛んでもファイルはない場合)はどうやって直接来た時に対応しているのでしょうか?
angularjsのルーターとHTML5のhistoryapiの勉強をしていたら疑問に思いました
0643デフォルトの名無しさん
2016/01/25(月) 17:34:27.32ID:RKt5tTyslocation.hash や location.search で処理分けすればいいのでは?
0644デフォルトの名無しさん
2016/01/25(月) 22:49:49.19ID:/YH8+HBFありがとうございます
ハッシュを使う方法では確かに直で来た時に調べることができるのですが、
pushstateで追加されて別のファイル名やパラメーターなどで一部更新されたページ、ファイルとして存在しないurlに飛ばれた場合は無理みたいですね
全部のファイルを作って、全部のファイルで同じ処理を読んで確認するしかないのはちょっと残念ですが
0645デフォルトの名無しさん
2016/01/25(月) 22:56:14.81ID:S9DR8nJTpushState はそもそも、存在するURLを指定するものです。
存在しないファイルを指定しているなら pushState を使う意味がありません。
0646デフォルトの名無しさん
2016/01/26(火) 02:08:51.62ID:Mz7z2xmLレスありがとうございます
pushstateについては納得いきました
つまりangularjsのrouteproviderにある/test/:paramみたいな機能はしっかりページを用意しておかないといけない(用意できるようなリンクにしておく)ということですね
0647デフォルトの名無しさん
2016/01/26(火) 06:03:00.04ID:ygI9wqh70648デフォルトの名無しさん
2016/01/26(火) 06:15:25.75ID:f7tvsCeN0649デフォルトの名無しさん
2016/01/26(火) 07:29:17.18ID:ygI9wqh7サンプルお願いします
0650デフォルトの名無しさん
2016/01/26(火) 07:31:14.22ID:xbGDVZvDまずお前が提示しろ
0651デフォルトの名無しさん
2016/01/26(火) 07:38:18.32ID:f7tvsCeN再びswitchかけたいんならswitch対象自体を操作するんだろうから適当に書くとこんなかんじか?
function recursiveSwitch( param ){
switch( param ){
case 0:
param=someFunctionZero(param);
break;
case 1:
param=someFunctionOne(param);
break;
case 2:
param=someFunctionTwo(param);
break;
case 3:
param=someFunctionThree(param);
param=recursiveSwitch(param);
break;
}
return param;
}
var target=3;
target=recursiveSwitch(target);
テストはしてない。function someFunctionThree() が3を返し続けないようにしないと無限ループ
0652デフォルトの名無しさん
2016/01/26(火) 09:05:30.89ID:0jKR4dX90653デフォルトの名無しさん
2016/01/26(火) 10:21:41.17ID:ygI9wqh7サンプルありがとうございました。その方法でやってみます。ところでググッていたら、
http://qiita.com/LightSpeedC/items/32c1d1d3c466b04b59d1
で以下の方法を見つけたのですが、
target: for (;;) switch (target) { の部分の意味が分かりません。何ですかこれは?
---------
JavaScript言語によるgoto文の様に書いてみた例
var target;
target: for (;;) switch (target) {
case undefined:
console.log('init');
case 'start':
console.log('start');
// goto next;
target = 'next';
continue target;
case 'skip':
console.log('skip');
case 'next':
console.log('next');
default:
break target;
}
console.log('exit');
0654デフォルトの名無しさん
2016/01/26(火) 12:28:06.93ID:0jKR4dX9この例はループの中にswitch文書いてるだけだよ。
つかgoto文の存在など、早く忘れた方がいい。
0655デフォルトの名無しさん
2016/01/26(火) 12:28:53.90ID:0jKR4dX9この例はループの中にswitch文書いてるだけだよ。
つかgoto文の存在など、早く忘れた方がいい。
0656デフォルトの名無しさん
2016/01/26(火) 12:30:16.45ID:0jKR4dX90657デフォルトの名無しさん
2016/01/26(火) 13:58:50.07ID:AKyFytjiをkonashiで動作させたいです!プログラムコードを教えてください!
0658デフォルトの名無しさん
2016/01/26(火) 14:00:14.48ID:AKyFytjiをkonashiで動作させたいです!プログラムコードを教えてください!
0659デフォルトの名無しさん
2016/01/26(火) 14:11:42.77ID:ygI9wqh7忘れられない
0660デフォルトの名無しさん
2016/01/26(火) 18:03:01.79ID:0jKR4dX9無い方がいいから淘汰されてきたんだ。奴の事は諦めろ。
0661デフォルトの名無しさん
2016/01/26(火) 18:17:49.94ID:f7tvsCeN少なくとも使い方を間違えなければ有用だとは思うが…
>>653はラベルと持ちまわすフラグ役の変数とforに付着させてるラベルに
同じ名前使ってるから混乱するけど、条件なしforでbreak target;するまでfor内まわしてるだけ、for(;;)はwhile(true)と似たようなもん
「3のときだけ再実行」ではなく「3以外は再実行しないでループを抜ける」って書き方で、だいたい同等の効果を得るのが>>653
0662デフォルトの名無しさん
2016/01/26(火) 21:32:11.47ID:REfyk5nJ非常に残念ながらES5のとき予約語から外してしまったため流れた。
0663デフォルトの名無しさん
2016/01/26(火) 23:49:49.18ID:Ej3tVqofエラー処理をまとめる際に使う
MISRA-C では、ループ中に、
continueを使う・breakが2箇所以上にあるのも禁止
関数の出口(return)が2つあるのも禁止
特に、制御フローを変える命令は、厳重にチェックする
0664デフォルトの名無しさん
2016/01/27(水) 01:41:22.45ID:00eXLu2iまあそのルールは俺は逆にただの足かせだとは思うが。
> そう、こういうのはだいたい昔の親切でない言語や開発環境を想定した規約なんだよね。
> 実際10年ぐらい前には、巨大メソッドの途中にreturn文があって以降が実は使われないゴミ、
> とかいう酷いプログラムを見かけたこともある。
> なので、そういう時代は出口を一か所にしなさいという主張にも、
> その結果として巨大なif文やらが作られてしまうことが多々あるものの、それでも一定の価値があった。
> でも今はJavaなんかだとそもそもそういうのは言語自体でエラーとして検知してくれるし、
> 何より一つ一つのメソッドを小さく作るべき、って思想も浸透してきてる(と思う)ので、
> この規約は可読性を下げるだけの厄介者でしかない。(#2295561)
> http://askslashdot.srad.jp/comments.pl?sid=588292&cid=2295472
> ただ、このスタイルはいい線いっているけど銀の弾丸ではない訳で、
> 厳格に適用してみるとフラグが必要になってゴチャゴチャする等の問題が発生したりする。
> これを避けようとすると、特定の場面においてbreakやcontinueや途中returnを使わざるをえなくなる。
> C言語では特定の場面でgotoも使うことにもなる。
> 現在のC言語系のプログラミング言語にbreakやcontinueや関数内限定のgotoが残っていたり、
> 途中でreturn可能な言語仕様だったりする理由は、
> 「乱用したらNGだけど、でも代替のよい案がない」からだ。つまり微妙に必要悪的なポジションの機能なのだ。
> http://d.hatena.ne.jp/eel3/20121225/1356443485
ここら辺が割と妥当な意見ではないかな。
ただ再帰も満足に書けない奴がgoto使うのは無しだよ。
基本的には「もっとも分かりやすい記述」にしろということであって、
つまり、自分がやりたい処理を何通りにでも書ける奴が
自分や自分以外の一般プログラマにとって一番簡単な記述を選ぶときのガイドラインであって、
一通りすらも満足に書けない奴がgotoとかやったらおそらく満場一致で死ねということになる。
0665デフォルトの名無しさん
2016/01/27(水) 02:33:42.30ID:TJ8X6UiD最もJavaScriptにおいて混沌として定義できないことだろう
それにスクリプト言語であるんだし、他人も見るようなソースを書くばかりではないしね
0666デフォルトの名無しさん
2016/01/27(水) 08:58:11.55ID:Fk4hNRa0今時は、使い回したい部分があるなら最初から関数化しとけで終わりだから、不要だよな。
0667デフォルトの名無しさん
2016/01/27(水) 14:11:16.05ID:LCHBmKl2文中にif文でこんなふうに関数を囲っても問題ないですか?
------- source.js --------
function func() {
// 新しい関数
}
if (false) {
function func() {
// 古い関数
}
}
------ここまで--------
つまり、funcを改良したのですが、古いのは参考にするために消さずに残して
おきたいので取りあえず無効化しておいて、新しいのを使いたいと言う場合。
0668デフォルトの名無しさん
2016/01/27(水) 14:22:26.15ID:Uz3IqtRqあとブロックの中で関数宣言はダメよ
0669デフォルトの名無しさん
2016/01/27(水) 14:38:15.86ID:LCHBmKl2>単にコメントアウトすれば
コメントの入れ子 /* /**/ */ などにするとエラーするのですが。
>あとブロックの中で関数宣言はダメよ
文法的に違反ですか?
0670デフォルトの名無しさん
2016/01/27(水) 15:26:45.24ID:Gnlbm7ojatomとか最近のエディタ使いなよ
ctrl / で選択範囲全部コメント、もう一回で復帰
0671デフォルトの名無しさん
2016/01/27(水) 17:55:33.38ID:3mhfO42bブロックの中で関数宣言はとっくに緩和された。
0672デフォルトの名無しさん
2016/01/27(水) 18:06:02.36ID:Fk4hNRa0全部の行を//でコメントアウトするんよ
>>670のいうとおり、エディタによっては簡単にできる。
0673デフォルトの名無しさん
2016/01/27(水) 21:08:26.85ID:4Pko3+8x現在、通常の文字などであれば、問題なく取得・置換等はできるのですが、
デザインモードで、<img src="xxxxxxx"> 等の画像があった時、表示されている画像を選択して同じように取得しようとすると
空の値が返ってきます。
edit = document.getElementsByClassName( editName )[0].contentDocument;
var selObj = item.getSelection();
selObj.toString() 等では取れませんでした。
調べてもわからず…
どうぞよろしくお願いいたします…
0674デフォルトの名無しさん
2016/01/27(水) 21:11:18.02ID:4Pko3+8x実際の実行はこんな感じです
edit = document.getElementsByClassName("edit")[0].contentDocument;
selObj = edit.getSelection();
すみません、よろしくお願い致します。
0675デフォルトの名無しさん
2016/01/27(水) 21:51:50.78ID:LCHBmKl2atom使ってみます。
>>671
>ブロックの中で関数宣言はとっくに緩和された。
では、
if (false) {
function func() {
...
}
}
こういう記述は文法的に問題ないですか?
0676デフォルトの名無しさん
2016/01/27(水) 22:14:23.92ID:BdMiQKBu仕様見ろ
0677デフォルトの名無しさん
2016/01/27(水) 23:10:36.84ID:92fi2xE/書けるからといって書いていいわけじゃない。
そんな消し方をしたら、大抵の人間はキレる。
まあ、一人でプログラム作ってるうちは、どんな無法も通せるから別にいいだろうけど。
0678デフォルトの名無しさん
2016/01/27(水) 23:34:39.52ID:e8RmjLYiコメントないと、なんでif(false)で退避してんのかどこの関数なんか全然わからん
常にsvnやgitを使えるわけじゃないし
>>673
文字列に挟まれた画像を画像ごと選択コピペすると画像のところは空文字列か空白類になるように、
ありゃ基本はあくまでテキスト選択。だから素直にDOM構造見て
window.getSelection().getRangeAt(0).startContainerなりinnerHTMLなりfirstElementChildあたりでなんとかするしかないのでは
0679デフォルトの名無しさん
2016/01/27(水) 23:51:21.41ID:1bMWaH5Aツールで取り除けるけど、
そういう実行可能なコードにすると、簡単には取り除けない。
また実行時にコンパイルされるかも知れないし、時間のムダ
コンパイラが賢ければ、その部分は絶対に実行されないから、
取り除くかも知れないが、ブラウザではあまりきつい最適化はしないよ
また変数・関数の宣言などにも、影響を与えるし、
バグを生むから、コメントにすべき
0680デフォルトの名無しさん
2016/01/28(木) 11:32:01.91ID:0VC4IiZBありがとう御座います!
ただの <img src="xxxxx"> での画像では、まったくもって値が取れないのですが、
<div><img src="xxxxx"></div> で囲んであげると、startContainer にimgタグがそのまま入りました!
これを innerHTML で取り出し置き換え処理等できました。
本当にありがとう御座います、助かりました…
0681デフォルトの名無しさん
2016/01/28(木) 15:21:12.54ID:k59Uf2Tmソースを読む上で重要なのは、どうしてそんな書き方がしてあるのかではなく、
それがどういう挙動をするかだ。
その点if(false)は読み飛ばせばいいだけだし、仮にどうしてかが気になっても
最低でも内に複数行コメントが用いられてるのを見れば誰にとっても自明である。
こんなことに一々コメントを書いていたらコメントの方が多くなってしまう。
0682デフォルトの名無しさん
2016/01/28(木) 19:11:29.65ID:X+Kzth4y0683デフォルトの名無しさん
2016/01/28(木) 19:15:57.36ID:vPLu6NB1その前に if 文が全く有効に働いてない点を何とかしろ
alert(func); // function func () { }
if (false) {
function func () { }
}
0684デフォルトの名無しさん
2016/01/28(木) 19:32:32.95ID:63oiELTtえっ?if(false)が許せるの?
0685デフォルトの名無しさん
2016/01/28(木) 22:48:41.45ID:Ho2+Qj5Eそれはsloppyモード限定の例外動作だ。
strictモードなら起きないし。
>>684
場合による
直ちに許せないとは言わないということだ
0686デフォルトの名無しさん
2016/01/29(金) 01:45:59.32ID:i7byzhy60687デフォルトの名無しさん
2016/01/29(金) 01:50:43.91ID:NW56arbt「こんなことに一々コメントを書いていたら」というが、コメントアウトが多くなるのはデッドコードを量産するコーダーの問題
>>681の言葉を借りるならコメントアウトしなければ「デッドコードの方が多くなってしまう」だけだが、そんなことになるならコードの書き方が元からおかしい
0688デフォルトの名無しさん
2016/01/29(金) 02:00:25.76ID:PQfy+X+f話が噛み合ってないよ
コメントアウトの手法の1つとしてif(false)を許容するかどうかで揉めてるんだよ
0689デフォルトの名無しさん
2016/01/29(金) 07:26:50.53ID:F3zdOsh5>>681の最後の一行を理解しかねるのだが
まさか、行頭に "//" が来る行数が多くなる事を懸念しているのか?
実際、コメントが多いのなら多いと自明である方がいいと思うが
0690デフォルトの名無しさん
2016/01/29(金) 08:03:17.97ID:jWh3F8zy理由は/* */範囲コメントが既にある場合に/* */を入れ子にするとエラーになるため
2 元の質問 if(false){ function func(){} } が文法面で問題があるかどうかについては基本的に「問題ない」が回答
3 選択範囲の行全てを // コメントアウトできるエディタを使えば解決、質問者はそれができるエディタを試すと言っている
はいもう終わってる案件です
0691デフォルトの名無しさん
2016/01/29(金) 08:28:10.97ID:f9EfU1JG0692デフォルトの名無しさん
2016/01/29(金) 08:32:56.68ID:6vAZQ0Iu質問者が終わっているのはわかっている
文意を読んでくれ
0693デフォルトの名無しさん
2016/01/29(金) 08:40:43.51ID:AS58wzCZコードメトリクスとるとか、その他ソース解析的な事をしようと思ったら、悪影響を与える可能性が高い。
それに言語によっては到達不能コードが警告やコンパイルエラーになるから、同じプロジェクト内でも言語によって、違う消し方をしなきゃいけなくなる。
こんな消し方は悪でしかないよ(断言)
そもそもプログラム上不要なものを、消すんじゃなくてそれを無力化するための処理を埋め込む、という考え自体がずれてると思う。
0694デフォルトの名無しさん
2016/01/29(金) 08:57:29.68ID:G034Tjvlコメントはコメントだからまだ使ってないコードだってわかるけど、
if(false)なんてしたら、何のためにこんなコード書いてるの?って
理由を調べることになる。
0695デフォルトの名無しさん
2016/01/29(金) 09:03:55.02ID:BRy+Pidl0696デフォルトの名無しさん
2016/01/29(金) 09:07:52.89ID:anzRyrfiじゃあ、それと間違えるからダメだな
0697デフォルトの名無しさん
2016/01/29(金) 12:22:52.37ID:v9i1VCfvならまだ分かるんすよ
0698デフォルトの名無しさん
2016/01/29(金) 12:43:43.87ID:7VD60tyB賢いエディタなら畳めるって意味くらいで。
最後にプリプロセッサで消して欲しいけど。
0699デフォルトの名無しさん
2016/01/29(金) 13:09:21.61ID:yQckpqSo0700デフォルトの名無しさん
2016/01/29(金) 16:36:51.98ID:lkEDj6woこれどうなるの?
(function () { 'use strict'; if (true) { function a() {} } a(); })()
これどうなるの?
(function () { 'use strict'; console.log(a); if (false) { var a = 123; } })()
これどうなるの?
0701デフォルトの名無しさん
2016/01/29(金) 16:51:45.47ID:F8xSAXciReferenceError: a is not defined
(function () { 'use strict'; if (true) { function a() {} } a(); })()
SyntaxError: in strict mode code, functions may be declared only at top level or immediately within another function
(function () { 'use strict'; console.log(a); if (false) { var a = 123; } })()
undefined
0702デフォルトの名無しさん
2016/01/29(金) 16:53:39.26ID:F8xSAXciObject expected
(function () { 'use strict'; if (true) { function a() {} } a(); })()
'a' is undefined
(function () { 'use strict'; console.log(a); if (false) { var a = 123; } })()
undefined
undefined
eval code (4) (1,30)
0703デフォルトの名無しさん
2016/01/29(金) 16:55:09.66ID:F8xSAXciオブジェクトを指定してください。
(function () { 'use strict'; if (true) { function a() {} } a(); })()
'a' は定義されていません。
(function () { 'use strict'; console.log(a); if (false) { var a = 123; } })()
undefined
undefined
0704デフォルトの名無しさん
2016/01/29(金) 17:29:03.55ID:lkEDj6woありがとうございます
マクロ風if文コメントアウトはクソの役に立つどころかクソ邪魔なそびえ立つクソのようですので
シングルラインコメントを使います
0705デフォルトの名無しさん
2016/01/29(金) 19:32:41.27ID:HboDmfw3一つ言えることはシングルラインだろうがなんだろうが、
デッドコードを残すのは良くない。
コメントは文章にだけ使え。
0706デフォルトの名無しさん
2016/01/29(金) 20:36:41.00ID:B53lZWqjグローバル変数名や関数名は
▼Scope
▼Global window
の中のメンバにありますが、
constで宣言した定数は
▼Script
の中にあります。
この定数名をプログラムから取り出したいのですが、方法が有れば教えて下さい。
グローバル変数ならwindowから取り出せたのですが。
0707デフォルトの名無しさん
2016/01/29(金) 20:50:05.86ID:HboDmfw30708デフォルトの名無しさん
2016/01/30(土) 01:30:26.61ID:1oljgPJ8Electronで、Windows, OS X, Linux用の、
HTML5デスクトップアプリを作る記事が載っている
JSの実行エンジンは、Node.jsで、
HTML5の実行環境は、Chromeのオープンソース版のChromium。
アプリに、これら2つを内蔵して配布する
Electronは、Atomエディタ、Visual Studio Codeで使われている
ローカルファイルにもアクセスでき、
OS内の別のアプリも起動できる・連携できる。
Drag & Drop, Clipboard も使える
Babelを使って、ECMAScript2015(ES6)でも書ける。
ReactのJSXも、Babel, gulp で変換できる。
AngularJSも使える
GUIは、jQuery UI、Reactなら、Material UI などを使って
0709デフォルトの名無しさん
2016/01/30(土) 10:43:58.68ID:VBvWbxk40710デフォルトの名無しさん
2016/01/31(日) 05:07:58.18ID:003tX3GTなんか他にお勧め無いすかね
0711デフォルトの名無しさん
2016/01/31(日) 14:11:05.37ID:AEa1Mqyg0712デフォルトの名無しさん
2016/01/31(日) 14:34:54.46ID:cx5Rrh1h0713デフォルトの名無しさん
2016/01/31(日) 19:21:01.85ID:xLFAyxDw0714デフォルトの名無しさん
2016/02/01(月) 04:22:13.19ID:Ffe8O4Eb0715デフォルトの名無しさん
2016/02/01(月) 14:45:21.63ID:FYMx+qz70716デフォルトの名無しさん
2016/02/01(月) 20:54:43.49ID:kI0Xug8k0717デフォルトの名無しさん
2016/02/01(月) 22:44:41.59ID:v8JCH8t30718デフォルトの名無しさん
2016/02/01(月) 22:48:43.77ID:fURVaPFx0719デフォルトの名無しさん
2016/02/01(月) 22:51:52.10ID:kI0Xug8k代入はまた別の話だし
0720デフォルトの名無しさん
2016/02/01(月) 22:55:57.07ID:gPO3j3Rtごめん。関数の外でって書いたつもりでしたw
0721デフォルトの名無しさん
2016/02/01(月) 22:58:49.36ID:v+j1QZdWだから順番に影響するわけで、何処に書いても同じってわけじゃないよね。
まぁ、これはjsを別ファイルにするとか以前の話になってくるわけだけど。
0722デフォルトの名無しさん
2016/02/01(月) 23:16:56.16ID:fURVaPFxvar foo = 1; は「変数宣言と代入演算子の組み合わせ」ではなく「変数宣言」
あと、下位スコープの変数は参照不可能なので「どこに書いても」は成立しない
0723デフォルトの名無しさん
2016/02/02(火) 00:30:02.56ID:dbeuEpdbいいや、今はそれについては言っていない。ちゃんと話の流れを見るように。
>>713
で分かる通り、タイミングと場所が関係あるかの話であって、一般的な話はしていない。
0724デフォルトの名無しさん
2016/02/02(火) 00:43:41.20ID:/HZNIUzX私も「タイミングと場所が関係している」という話をしているのだが
foo; // ReferenceError: foo is not defined
function hoge () { var foo = 1; }
console.log(foo); // undefined
var foo = 1;
console.log(foo); // 1
0725724
2016/02/02(火) 00:46:32.06ID:/HZNIUzXfoo; // ReferenceError: foo is not defined
function hoge () { this.foo = 1; }
hoge.call(this);
0726デフォルトの名無しさん
2016/02/02(火) 01:33:45.90ID:NUEtrHjv変数の宣言箇所と参照箇所の位置関係によっては同じ動きにはならない。
でFAです。
ファイルのロード順に気を付けてくだされ。
0727デフォルトの名無しさん
2016/02/02(火) 11:53:44.01ID:H059HmUHだからそういう話はしていない。>>721が言っているようにそれは別の話。
自分はタイミングが関係あるかどうかの話だけをしてる。
0728デフォルトの名無しさん
2016/02/02(火) 13:19:10.18ID:dh99WtH+私は>>716,719の「宣言は巻き上げされるのでどこで書いても良い」に反論しているだけだが、あなたの持論はどこにある?
どこに書いても良い事例となるコードで示してくれ
0729デフォルトの名無しさん
2016/02/02(火) 14:58:36.94ID:3ts5bPpY0730デフォルトの名無しさん
2016/02/02(火) 15:21:14.26ID:dh99WtH+0731デフォルトの名無しさん
2016/02/02(火) 16:33:02.97ID:3ts5bPpY0732デフォルトの名無しさん
2016/02/02(火) 16:53:37.90ID:dh99WtH+>>711の「宣言」は初心者の誤用だろうから「グローバル変数の初期化文」と勝手に置き換えている
>>725で書いたのはグローバルコードを想定していてグローバルオブジェクトのプロパティへの代入は該当すると思うが、どうか?
「プロパティ代入は宣言じゃない」という指摘なら、「変数文はあっても変数宣言はない。そもそも、>>711のいう宣言が何なのかを質問者に問うべき。」と反論するところだが
ついでに>>722で反論した部分も「13.3.2 Variable Statement」で規定されている
http://www.ecma-international.org/ecma-262/6.0/#sec-variable-statement
0733デフォルトの名無しさん
2016/02/02(火) 17:22:31.99ID:dh99WtH+'use strict';
/* グローバルコード */
foo; // ReferenceError: foo is not defined
hoge; // ReferenceError: hoge is not defined
const foo = 1;
let hoge = 2;
0734デフォルトの名無しさん
2016/02/02(火) 19:28:13.95ID:3N5KmsWzそれとlet/const宣言ではグローバル変数ではなく、
その直下の仮想ブロックスコープとして定義される
つまりグローバルオブジェクトのプロパティにはならない
0735デフォルトの名無しさん
2016/02/02(火) 19:46:52.83ID:dh99WtH+巻き上げについては私の認識と一致してる
だからこそ「どこに書いても同じ処理にはならない」と思うが
const, let については不勉強だった
確かにグローバルオブジェクトのプロパティにはならないな…
0736デフォルトの名無しさん
2016/02/02(火) 20:29:26.53ID:3N5KmsWzようやく君が何が言いたいのかは分かった
>>721が>>714へのレスだと早とちりしてたみたいだ
しかし残念ながら>>716,719は別人だ
0737デフォルトの名無しさん
2016/02/02(火) 20:42:53.08ID:dh99WtH+あなたは満足したようだが、私はあなたが誰かわかっていない
私の発言は>>718,722,724-725,728とID:dh99WtH+
>>716,719がおかしいと思うので>>723の「今はそれについては言っていない。ちゃんと話の流れを見るように。 」の反論の意味が分からなかった
0738デフォルトの名無しさん
2016/02/02(火) 21:01:38.63ID:ju/2Ysizこれ以上質問者を置き去りにして言葉尻を取り合う喧嘩をしてもしょうがない。
仕様の宗教のような話なら別スレでどうぞ。
0739デフォルトの名無しさん
2016/02/02(火) 21:46:00.10ID:N/tRsSuYお前らは誰と闘ってるだよw
0740デフォルトの名無しさん
2016/02/02(火) 21:50:59.18ID:dh99WtH+「そんな話はしていない」しか返さない相手と話すのが不毛だとは思ってるよ
0741デフォルトの名無しさん
2016/02/02(火) 23:58:02.10ID:q1EzF9s60742デフォルトの名無しさん
2016/02/03(水) 02:33:05.91ID:WMsKvupE会話が成立しないわけだ
0743デフォルトの名無しさん
2016/02/03(水) 07:34:25.05ID:fNUqVTnf0744デフォルトの名無しさん
2016/02/03(水) 09:27:12.84ID:ToDOcZiy0745デフォルトの名無しさん
2016/02/03(水) 09:39:11.07ID:RqicRRsWどんな場合にも絶対こうなる、ってことは殆ど無いぞ。
もっと具体的で限定的な部分部分の話をした方がいい。
0746デフォルトの名無しさん
2016/02/03(水) 09:41:00.56ID:RqicRRsWa=1
alert(a)
と
alert(a)
a=1
は同じかとかそういうレベルのことを聞いてるのか?
0747デフォルトの名無しさん
2016/02/03(水) 10:03:28.21ID:KkuXsvhBvar a; // No. 1
a = 1; // No. 2
alert(a);// No. 3
これを1行ずつ全部別のファイルに書き出して
あるHTMLで <script type="text/javascript" src="./1.js"></script> などと書いて順番に読むとき、読む順番全6パターンはそれぞれこうなる
num| 出力 | エラー
123 | 1 |
132 | undefined |
213 | 1 |
231 | 1 |
312 | n/a | a is not defined
321 | n/a | a is not defined
312と321に違和感を覚える人がいるかもしれないけどこうなる
0748デフォルトの名無しさん
2016/02/03(水) 13:07:58.91ID:FRjmjuum結論は勿論そうなんだけど、そりゃ当たり前の話。
上でもちょっと出てるが、ファイルを分離するとか以前に、変数宣言の前後や代入の前後等、各所でその変数を参照した場合、結果が変わるのは自明だろ?
つまりjsが外部か内部か以前の問題として、参照箇所によって挙動が変わる可能性は既にあるわけだ。
更に、外部jsにした場合、ファイルの読み込む順番により、参照と宣言の前後関係が変わる可能性がある。
それは挙動を変える要因が増えるというだけの事なんだよ。
0749デフォルトの名無しさん
2016/02/03(水) 14:09:01.34ID:+1Rylgj+0750デフォルトの名無しさん
2016/02/03(水) 19:01:51.64ID:4vp1LVJQ0751デフォルトの名無しさん
2016/02/03(水) 21:34:04.11ID:FRjmjuum0752デフォルトの名無しさん
2016/02/03(水) 22:04:19.79ID:zYHyrw+/今回は>>748の書き方が悪いな
0753デフォルトの名無しさん
2016/02/04(木) 00:23:06.24ID:bE5bgH6fまた出た、はこっちの台詞だわ
0754デフォルトの名無しさん
2016/02/04(木) 01:00:45.86ID:ND6YloghECMAの仕様としてあるいはUAごとで、そういうのが存在するかどうか知らんけど
0755デフォルトの名無しさん
2016/02/04(木) 11:28:50.84ID:EYZx+gFX嘘も真実も混じって
後はそのどれを信じるかは質問者の問題
0756デフォルトの名無しさん
2016/02/08(月) 12:20:56.32ID:uAQYy5Bg0757デフォルトの名無しさん
2016/02/08(月) 13:08:23.67ID:9AywMO4KJavascriptをはじめて学習するのにベストな本はなんですか?
他言語で高度なプログラミング知識はすでにあるので幼稚園児に語りかけるような本はイヤです。
0758デフォルトの名無しさん
2016/02/08(月) 13:18:28.03ID:e87P5encとほほで十分だと思う
あれで断片的になら問題なく学習できる
ある程度断片的な知識が貯まったところで
Effective JavaScriptを買ってくればいい
0759デフォルトの名無しさん
2016/02/08(月) 13:20:41.15ID:e87P5enc0760デフォルトの名無しさん
2016/02/08(月) 13:53:33.09ID:REXLJUevwww.yahoo.co.jp
のhtmlを文字列か何かに読み取るなどは可能ですか?
0761デフォルトの名無しさん
2016/02/08(月) 14:13:45.58ID:kVh66luE他のサイトって言い方をするならブラウザだろうから>>278かな
0762デフォルトの名無しさん
2016/02/08(月) 18:30:14.93ID:oTIfYznp【環境】OS,:Win8.1、MAX/MSP6.0
【期待する結果】2つの別々の配列を作り、1〜12までのランダムな数値を重複なくそれそれの配列に格納したい。1つめの配列については成功したが(ので省略しました)、2つ目の配列で、1つ目の配列と重複する要素がどうしても出てしまう。
【サンプルコード】
var generated = new Array();
var generated2 = new Array();
var count2 = 6;
function generate_randomx2(count2){
if(arguments.length){
var generatedCountb = generated2.length;
for(var i = 0 ; i < count; i++){
var candidate2 = Math.floor(Math.random() * 12);
for(var k = 0; k < generatedCountb; k++) {
for(var j = 0; j < generated.length; j++){
if(generated[j] == generated2[k] || candidate2 == generated2[k]){
candidate2 = Math.floor(Math.random() * 12);
j= -1; k= -1;
}}}
generated2[i] = candidate2;
generatedCountb++;
}
return generated2;
}
}
function bang(){
for (var i = 0; i < 6; i++){
outlet(2,i);
outlet(3,generated2[i]);
}
}
0763デフォルトの名無しさん
2016/02/08(月) 18:41:00.79ID:E+wItWi7math.randomで乱数得るんじゃなくって
0から11までの配列作ってこれをfisher-yatesか何かで並び替えて使うんじゃダメなのか?>重複回避
0764762
2016/02/08(月) 18:52:05.67ID:oTIfYznp回答ありがとうございます。
MAX/MSPスレで質問したいところなのですが、
そのスレでjavascriptを使う方がそもそも少ないという事情があります。
また、bang関数以下は無視してくださって大丈夫です。
>math.randomで乱数得るんじゃなくって
0から11までの配列作ってこれをfisher-yatesか何かで並び替えて使うんじゃダメなのか?>重複回避
なるほど、そういう手がありましたか、さっそく検索して調べてみます。
ご回答有難うございました。
0766デフォルトの名無しさん
2016/02/08(月) 19:53:14.61ID:hJZZUY1hそのアルゴリズムの関数を提供しているライブラリがありまして。
このように簡単に使うことが出来ます。
https://lodash.com/docs#shuffle
Creates an array of shuffled values, using a version of the Fisher-Yates shuffle.
Arguments
collection (Array|Object): The collection to shuffle.
Returns
(Array): Returns the new shuffled array.
Example
_.shuffle([1, 2, 3, 4]);
// → [4, 1, 3, 2]
0768デフォルトの名無しさん
2016/02/08(月) 22:01:16.55ID:REXLJUevありがとうございました
0769デフォルトの名無しさん
2016/02/09(火) 03:56:18.72ID:1o3XeJIl0770デフォルトの名無しさん
2016/02/09(火) 08:50:00.82ID:B5xk/vUmこのサンプル実行するとhoge.txtは
/Users/USERNAME/Library/Application Support/Google/Chrome/Default/File System/
に保存されますと書いてあるのですが、これはMacOSの場合のようですが、Window7の場合どこに出ますか?
0771デフォルトの名無しさん
2016/02/09(火) 22:41:36.97ID:uq6Q+Hm9%USERPROFILE%\AppData\Local\Google\Chrome\User Data\Default\File System
0772デフォルトの名無しさん
2016/02/09(火) 22:43:33.85ID:kyiA5+yG0773デフォルトの名無しさん
2016/02/09(火) 22:48:09.47ID:3JUZFTfyhttps://www.crowdrive.com/
0774デフォルトの名無しさん
2016/02/09(火) 22:51:13.86ID:uq6Q+Hm9https://code.google.com/archive/p/jsdt/
0775デフォルトの名無しさん
2016/02/09(火) 22:55:04.17ID:B5xk/vUmありがとうございました。
その後いろいろ試したのですがファイルが作成されません。
エラーもしません。何が悪いのでしょうか?
0776デフォルトの名無しさん
2016/02/09(火) 23:05:48.37ID:kyiA5+yGよっしゃ、ありがとう。
ところでその方法はどれくらい一般的ですか?
みんなJavascript開発はどのツールでやってるんだろ?
円グラフで見てみたいな。
0777デフォルトの名無しさん
2016/02/09(火) 23:09:06.72ID:+jj6AtaF0778デフォルトの名無しさん
2016/02/09(火) 23:19:23.54ID:kyiA5+yG0779デフォルトの名無しさん
2016/02/09(火) 23:24:16.37ID:DkDaZ+yJ0780デフォルトの名無しさん
2016/02/09(火) 23:27:07.44ID:uq6Q+Hm9Sublime Text 3
>>778
定番のテキストエディタだが、プログラミング用途ではない
0781デフォルトの名無しさん
2016/02/09(火) 23:41:20.69ID:+jj6AtaF正しくは「プログラミング専用ではない」といったところでは
プログラミング支援機能が無いかというとそうではない、しかしIDEでもない
0782デフォルトの名無しさん
2016/02/09(火) 23:43:13.36ID:G1Osl5xS0783デフォルトの名無しさん
2016/02/09(火) 23:57:06.16ID:OJMdLEFS0784デフォルトの名無しさん
2016/02/10(水) 00:27:17.95ID:132OU3lgほとんどC用で少なくともjsでは使い物にならんぬ
0785デフォルトの名無しさん
2016/02/10(水) 01:00:37.31ID:p4v1ixKx滅茶苦茶便利だけどな、brackets。軟派者用と見せかけて。
0786デフォルトの名無しさん
2016/02/10(水) 02:35:59.18ID:6S3EaPtl0787デフォルトの名無しさん
2016/02/10(水) 07:07:17.20ID:WrIiP8csElectron は、Chromium, Node.js を内包しているから、
これ一つで、何でもできる
ローカルHDDにアクセスもできる
0788デフォルトの名無しさん
2016/02/10(水) 09:16:14.43ID:OMjrnwdssub.html
があって
index.htmlの中で
var subWin = window.open('sub.html');
を開くとその後は
subWin.postMessage(...)
とすればデータ送信が出来ますが、その後、index.htmlをリロードするとsubWin変数もクリアされてしまい送信できません。
どうにか送信する方法ありますか?
0789デフォルトの名無しさん
2016/02/10(水) 10:12:55.63ID:ppe9pP0j0790デフォルトの名無しさん
2016/02/10(水) 10:16:34.21ID:HYgNFwd5めっちゃ人気あったんやぞ
http://image3-a.beetv.jp/basic/img/title/10003191_h_pc_l.jpg
0791デフォルトの名無しさん
2016/02/10(水) 10:23:09.15ID:OMjrnwds出来ます。
0792デフォルトの名無しさん
2016/02/10(水) 10:23:48.33ID:OMjrnwds0793デフォルトの名無しさん
2016/02/10(水) 10:34:13.50ID:jnF2JUJTそれはおぼっちゃまくんな。
0794デフォルトの名無しさん
2016/02/10(水) 10:43:55.73ID:KVydSgEF2014-11-15
などと値が入ってます
これ、JavaScriptに渡ると
2014-11-15T00:00:00.000Z
UTC形式になっちゃうわけですよ。表示はまだいい。
HTML5のDateでもAngular bootstrap UIのDatePickerでも
2014-11-10
と変えてデータベースに書き込むと、そのときの書き込む値は
2014-11-09T15:00:00.000Z
と日本ローカルタイム2014-11-10 0:00をUTC変換した値になり
データベースには「2014-11-09」が書き込まれてしまう
想定した「2014-11-10」が書けないんですわwww
ぼすけてwww
スマートな解決求むorz
0795794
2016/02/10(水) 11:35:08.49ID:KVydSgEFは使いましたが、検索の開始日付けに使う
→検索実行時に、日本なら-(-540分)する。おkおk
→複数回検索すると、日付けが9時間ずつズレていく
という失敗しています
0796デフォルトの名無しさん
2016/02/10(水) 11:45:25.15ID:ppe9pP0jデータベースってのはIndexedDB?
0797794
2016/02/10(水) 12:15:44.12ID:KVydSgEFDBはPostgreSQL、他にも使われてるのでtimestamptz型への変更は無理です
根本的に、JavaScriptのDate型はUTC秒数であって日付けじゃないのが原因なわけですが
書き込み一回だけ使うならば
getTimezoneOffset = -540 (日本) を使い、
表示2014-11-10
内部2014-11-09T15:00:00Z
- (-540) = 2014-11-10T00:00:00Z
として書き込めば出来ます
しかしDOMで持ってる値を操作してしまうと、すでに操作済みなのかまだ操作してないのかも管理しないといけない
(画面によっては複数回生きてるものがある、検索用とか)
文字列に変換してサーバ側に渡すのはコントローラのコードが煩雑過ぎる
どうするんや!となってます
0798デフォルトの名無しさん
2016/02/10(水) 12:45:44.13ID:khnAsa7kDOMの読み書きのコード提示しろ
0799デフォルトの名無しさん
2016/02/10(水) 12:45:49.30ID:9zFOz3LH0800デフォルトの名無しさん
2016/02/10(水) 12:57:25.47ID:ppe9pP0jjavascript側で表示する時は
地方時を一切切り捨ててUTCメソッドのみを用いる
var date = new Date()する時だけ意図的に+540する
0801794
2016/02/10(水) 14:03:06.19ID:KVydSgEF読みはAngularで、
$scope.oneOrder = ServiceOrders.get({ repairID: selectedID });
とか。修理オーダーに受付日付などが入っておるわけで
書き込みもAngularで、
dt = $scope.oneOrder.AcceptedDate;
dt.setMinutes(dt.getMinutes() - dt.getTimezoneOffset());
ServiceOrders.update($scope.oneOrder, $scope.onrefresh);
//複数回使うなら以下も必要
dt.setMinutes(dt.getMinutes() + dt.getTimezoneOffset());
ServiceOrdersはAngularの$resource(AJAX)で、JSON REST APIです
getで返って来るのはもちろん文字列で、
"AcceptedDate": "2014/11/15",
DBにもこう入ってます
日付が出てくるたんびにマイナスしてプラスして、はダサ過ぎると思うわけですよ
799さんの言うように文字列で扱う専用のディレクティブ作るしかないんやろか
0802デフォルトの名無しさん
2016/02/10(水) 14:54:55.86ID:jnF2JUJT勝手にUTCからローカルタイムになるなら、
その逆の仕組みもあるって考えるべきだろ。
コード書く前に何故そうなるのかの理由を調べろよ
0803デフォルトの名無しさん
2016/02/10(水) 17:48:39.37ID:vMRcdgqQPostgreSQL に "timestamp without time zone" でデータ入力したのがそもそもの問題では?
全データをエクスポートした後に "timestamp with time zone" でテーブルを作り直せば解決すると思われる
http://www.postgresql.jp/document/9.3/html/datatype-datetime.html#AEN5823
0804デフォルトの名無しさん
2016/02/10(水) 18:09:30.99ID:jnF2JUJT0805デフォルトの名無しさん
2016/02/10(水) 19:20:39.44ID:0hGKO9sHBroadcastChannelを使う
0806デフォルトの名無しさん
2016/02/10(水) 19:44:31.88ID:xnMn0ijkユーザーにロンドンで使えと言え
0807デフォルトの名無しさん
2016/02/14(日) 14:25:58.15ID:t425P/AR0808デフォルトの名無しさん
2016/02/14(日) 15:14:34.17ID:f4GEMmHV0809デフォルトの名無しさん
2016/02/18(木) 00:06:50.22ID:7t/CnJqD階層が異なるhtmlをloadした後、そのhtml内に定義した外部ファイルのjavascriptの読み込みに失敗してしまいます。
外部ファイルじゃなくscriptタグ内に記載すれば起動できるのですが、外部jsは読み込めないのでしょうか・
$.getScriptでもダメでした。
相対パスで階層違い、スペルミスもチェック済みです。何か考えられることはありますか?
0810デフォルトの名無しさん
2016/02/18(木) 02:15:10.23ID:9FL8VTOJhtmlやそこに直に書いてあるscriptはロード完了すれば存在するけど
src=で指定したさらに外部のスクリプトは、htmlのロード直後にはまだ存在しないわけだし
htmlのload読み込み完了したらgetScriptで読み込めばいいんでないの
0811デフォルトの名無しさん
2016/02/20(土) 09:36:48.27ID:jtnfjqEh0812デフォルトの名無しさん
2016/02/20(土) 10:59:15.87ID:oGPVFEGthttps://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Classes
https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Inheritance_and_the_prototype_chain
0813デフォルトの名無しさん
2016/02/20(土) 15:21:01.73ID:izAI/KRPありがとうございます。
load先のhtmlでreadyしてからgetScriptしても読み込み失敗してしまいます。
読み込み後にalert出してみたら表示されたので書き方は間違っていないようですが失敗してしまいます。
やっぱりload先で外部jsの読み込みは不可能ですかね?
0814デフォルトの名無しさん
2016/02/20(土) 15:43:35.99ID:jtnfjqEh簡単なサイトって言ってるのが理解できなかったようですね。
そういうリファレンスサイトなんて誰も求めていません。
0815デフォルトの名無しさん
2016/02/20(土) 16:06:52.20ID:LyOsXfce0816デフォルトの名無しさん
2016/02/20(土) 16:45:02.16ID:izAI/KRP自己解決しました!
外部jsファイルの前後に<!-- -->があったためでした。
(本体のHTMLの<script>タグからだと読めましたがgetScriptではだめなようです。)
解決方法ですがgetScriptにdone()とfail()を指定してで読み込み成功可否判別したら、
failの第3引数のexceptionをalert表示してみると構文エラーと出てたので解決にいたりました。
お答えいただいたた方、ありがとうございました。
0817デフォルトの名無しさん
2016/02/20(土) 16:53:13.46ID:nGlsW33n0818デフォルトの名無しさん
2016/02/20(土) 17:29:59.68ID:xKbu6SpWMDNは俺にとっては十分簡単だし、必要十分な情報があると思うけどな
あなたが「簡単」と感じる尺度はあなた自身にしか分からない
0819デフォルトの名無しさん
2016/02/20(土) 17:49:53.50ID:jtnfjqEhレスしていただかなくて結構ですよww
あなたの簡単なんて尺度でモノを図ってる段階で論外ですからww
0820デフォルトの名無しさん
2016/02/20(土) 18:04:58.14ID:CX3BRGG/特に酷い回答されたわけではないのに不快にする言い方するんだ
あらしたいのかよ
0821デフォルトの名無しさん
2016/02/20(土) 18:10:38.66ID:54hZ2zfb初心者にわかりやすいサイトなんて存在しないんじゃない?
0822デフォルトの名無しさん
2016/02/20(土) 18:21:37.11ID:mUUTz7yXわざわざURL探してきたのに煽られてる>>812が不憫すぎる
0823デフォルトの名無しさん
2016/02/20(土) 19:08:28.41ID:7FJRvlZ/リファレンスなんて誰も求めていないんですよ。
そんなもの最初からあることくらい知ってますから。
0824デフォルトの名無しさん
2016/02/20(土) 19:09:40.52ID:7FJRvlZ/自分で書くしかないようですね。
ありがとうございます。
0825デフォルトの名無しさん
2016/02/20(土) 19:11:06.04ID:7FJRvlZ/それと、ソレを簡単って言ってるなら、まぁ、ぶっちゃけ病院言って、
空気読めないんですが治りますか?って行ってくるといいよ。
0826デフォルトの名無しさん
2016/02/20(土) 19:15:54.84ID:7FJRvlZ/何勘違いしてんのか知らないけれど、俺はクラス使えるからねww
質問の意図間違えてるようだけど。
酷い解答されたわけではない?これ、初心者に渡すのお前?
僕は簡単でしたって?ww そういう奴多いよねぇ、ココ。そういう
の病気だって知ってるか?
0827デフォルトの名無しさん
2016/02/20(土) 19:26:10.73ID:HOPxSzsv病院行った方がいいよマジで。
0828デフォルトの名無しさん
2016/02/20(土) 20:19:46.92ID:izAI/KRP初心者に渡すならとほほのjavascriptサイトを勧めるね。
http://www.tohoho-web.com/js/start.htm#HelloWorld
順を追ってば中級者程度になれるけどこれでも簡単じゃないなら本人の努力不足か理解不足
だな
0829デフォルトの名無しさん
2016/02/20(土) 20:49:02.08ID:Y5ep2gbm0830デフォルトの名無しさん
2016/02/20(土) 20:59:19.56ID:HOPxSzsvhttp://peace.2ch.net/test/read.cgi/tech/1455817784
0831デフォルトの名無しさん
2016/02/20(土) 22:22:29.66ID:3MTra0yO採用されてしまうのが謎。
意味がわからん。
俺がオッサンなのは認めてもいいが理由を知りたい。
0832デフォルトの名無しさん
2016/02/20(土) 22:23:46.52ID:3MTra0yO0833デフォルトの名無しさん
2016/02/20(土) 23:05:41.06ID:cJNMkscd俺もなるよ。
何度かリロードすればたいてい治るとよ。
0834デフォルトの名無しさん
2016/02/21(日) 01:14:25.60ID:/Ied2krL0835デフォルトの名無しさん
2016/02/21(日) 01:27:42.97ID:YmVWQy/y0836デフォルトの名無しさん
2016/02/21(日) 09:01:18.95ID:lDbEdv1bこれがクラスだと言えばクラスになるんだから。
0837デフォルトの名無しさん
2016/02/22(月) 13:01:37.48ID:oJepb8hBってどうですか?他言語でプログラミング言語の知識はある程度以上あります。
でもJavaScriptは初心者でHTMLの知識はひととおりある程度です。
0838デフォルトの名無しさん
2016/02/22(月) 13:52:00.47ID:7K+LTY2x他の言語をある程度分かっている人が手っ取り早くスタートに着くにはいいと思います。
複数のファイルに分かれているソースの実行順序やJavaScriptではクラスをこうやって実現しますなどの
多言語から来た人が知りたいことが、要領よく説明されています。
これでさっさとスタートして、後はデビッドフラナガンの本(オライリー)で埋めていけばいいと思います。
山田嫌いも多いようなので、合わないかも知れませんが。
0839デフォルトの名無しさん
2016/02/22(月) 14:12:54.47ID:oJepb8hBそうでございますか、ありがとう。さっそく買ってきますわ。
0840デフォルトの名無しさん
2016/02/23(火) 01:18:03.36ID:H8f9+DBt0841デフォルトの名無しさん
2016/02/23(火) 08:25:59.40ID:ltvQNGjy推薦図書/必読書のためのスレッド 78
ttp://peace.2ch.net/test/read.cgi/tech/1447165038/46
マルチポストは禁止!
同じ質問を、他のスレや他のサイトで、聞いてはいけない
必ず、一方を取り消してから、書き込むこと
0842デフォルトの名無しさん
2016/02/23(火) 08:36:29.00ID:EYfFVqfr0843デフォルトの名無しさん
2016/02/23(火) 11:38:39.26ID:H8f9+DBtあれれ?おかしいですよ。
>>837は
「JavaScript本格入門」 山田 祥寛
http://peace.2ch.net/test/read.cgi/tech/1447165038/46は
山田祥寛(よしひろ)、翔泳社 10日でおぼえる jQuery 入門教室 第2版
本が違うようですが。
「JavaScript本格入門」 山田 祥寛は良くないということですか?
0844デフォルトの名無しさん
2016/02/23(火) 12:16:56.65ID:vAHT/KiXマルチ
0845デフォルトの名無しさん
2016/02/23(火) 12:27:17.28ID:Oh6h4g2Thttps://esepin.net/log/213
高すぎる評価
ただ、Amazonではこの方(WINGSプロジェクトも)の著書は高すぎじゃないかというくらい高評価です(著書の内容が良くないとは言いませんが)
更にこの方の著書のレビュアーをよく見ると少しヘンです
さらっと見ただけで以下の共通のレビュアーが見つかります。大体が★5を付けています
http://www.amazon.co.jp/gp/pdp/profile/A2ZBMYCKBPL6P5/
http://www.amazon.co.jp/gp/pdp/profile/A2UPYKSC9X5959/
http://www.amazon.co.jp/gp/pdp/profile/A3VKNIQU5HOOF6/
http://www.amazon.co.jp/gp/pdp/profile/A2B3Q5QQVGSOFU/
おそらくは献本を受けた方のレビューじゃないかと思うのですが、ここまで露骨だとサクラとかステマといわれても仕方がありません
0846デフォルトの名無しさん
2016/02/23(火) 13:47:47.87ID:H8f9+DBtそんなことはどうでもええ。
「JavaScript本格入門」が厨さんの候補に挙がってなくて
「10日でおぼえる jQuery 入門教室」のほうか挙がっているのは
後者のほうができがいい本なのかどうかがいま問題だ。
あまりわたしを怒らせないほうがいいぞ。
0847デフォルトの名無しさん
2016/02/27(土) 01:32:05.89ID:IUWCqsoHFileReaderが特に意味不明過ぎる
なんであんな余計な手順踏んでるんだ?Cなら一発なのに
0848デフォルトの名無しさん
2016/02/27(土) 01:36:34.47ID:g3DkZYTVセキュリティのためだよ。
Cはブラウザで動かないでしょ?そのまま動かしたら脆弱性になるから。
Cならっていうならば、Cの問題点までわかるようになろう。
Cを使いこなせていない。
0849デフォルトの名無しさん
2016/02/27(土) 01:53:16.41ID:IUWCqsoH0850デフォルトの名無しさん
2016/02/27(土) 02:30:08.52ID:IUWCqsoHdocument.getElementById("menu").innerText = "1";
がつかえねぇけどhtmlの方の書式が間違ってるのか
0851デフォルトの名無しさん
2016/02/27(土) 03:05:36.63ID:lXntGSmHhttps://developer.mozilla.org/ja/docs/Web/API/Node/textContent
0852デフォルトの名無しさん
2016/02/27(土) 04:27:25.68ID:IUWCqsoHtextContentの方がいいのか
0853デフォルトの名無しさん
2016/02/27(土) 05:55:12.95ID:g3DkZYTVそういう罠にハマりたくなかったらjQueryを使うのがいい。
どのブラウザでも、古いブラウザでも同じように動く。
0854デフォルトの名無しさん
2016/02/27(土) 08:45:03.85ID:39+8+0w9http://caniuse.com/
http://kangax.github.io/compat-table/es5/
https://developer.mozilla.org/ja/docs/Web
0855デフォルトの名無しさん
2016/02/27(土) 10:08:48.72ID:g3DkZYTV0856デフォルトの名無しさん
2016/02/27(土) 10:12:11.27ID:1upMdKx/0857デフォルトの名無しさん
2016/02/27(土) 10:15:25.99ID:g3DkZYTV0858デフォルトの名無しさん
2016/02/27(土) 10:44:04.12ID:0gvyIPvr0859デフォルトの名無しさん
2016/02/27(土) 18:12:52.92ID:7I6x18bIC言語の場合も昔からクロスプラットフォームライブラリっていうのがあって
それを使うことで簡単にWindowsでもLinuxでもMacOSXでも動かすことができた。
0860デフォルトの名無しさん
2016/02/27(土) 19:27:59.56ID:IUWCqsoH0861デフォルトの名無しさん
2016/02/27(土) 19:31:45.90ID:39+8+0w9DOMどころかESも理解してないjQuery初心者が多くて困る
基礎はしっかりと理解しておかないといかんよ
0862デフォルトの名無しさん
2016/02/27(土) 19:35:40.34ID:39+8+0w9試してないが、<script><!-- --></script> で回避できるのでは?
innerTextは非標準だから全ブラウザで同じ挙動が保証されてない
特殊な事をやるなら再帰処理して独自に組んだ方が良いとは思うが
0863デフォルトの名無しさん
2016/02/27(土) 19:35:46.29ID:IUWCqsoH考え方なんてどれも一緒だろ?
0864デフォルトの名無しさん
2016/02/27(土) 19:36:11.83ID:IUWCqsoH0865デフォルトの名無しさん
2016/02/27(土) 20:09:14.33ID:7I6x18bIドキュメントを読むことで生産性をあげられるんだから
それはいいことだよ。
ただ、罠を探すためにドキュメントを読むっていうのは
生産性あがってないので、なんだかなぁって思う。
0866デフォルトの名無しさん
2016/02/27(土) 21:59:38.68ID:39+8+0w9罠を探すのではなく、標準化されたAPIでの実装方法を読む
>>850は独自拡張機能を使ったからFirefoxに対応できなかった
jQueryでも例えば、下記URLの問題はjQuery APIだけでは解決できない
https://teratail.com/questions/16247
jQueryは基本的にDOM要素ノードへ変更を加えるAPIしか実装していないからだ
html()で既存DOMを全て上書きする実装なら出来なくはないが、既存DOMの参照が失われるのは影響力が大きい
0867デフォルトの名無しさん
2016/02/27(土) 22:02:25.14ID:39+8+0w9そのせいかjQuery初心者の中にはイベントバブリングを知らない人が多いようだ
学ぶのが無駄と面倒くさがらずにDOMの基礎知識を蓄えた方が良い
0868デフォルトの名無しさん
2016/02/27(土) 22:15:50.66ID:7I6x18bI○ そのせいか初心者の中にはイベントバブリングを知らない人が多いようだ
0869デフォルトの名無しさん
2016/02/27(土) 22:17:23.02ID:IUWCqsoH0870デフォルトの名無しさん
2016/02/27(土) 23:09:10.73ID:ILp1d0We0871デフォルトの名無しさん
2016/02/28(日) 08:04:50.54ID:w1saw6Ta最新仕様でもArray.slice()しかなかったっけ?
10個の配列の3番目以降を取り出すとか
もうちょっとスマートに書きたい。
0872デフォルトの名無しさん
2016/02/28(日) 08:29:40.99ID:TgU16/Zq0873デフォルトの名無しさん
2016/02/28(日) 09:46:56.89ID:w1saw6TaPytyhonだったら、array[3:] こんな感じで指定できるんだよね。
0874デフォルトの名無しさん
2016/02/28(日) 12:29:40.31ID:BSW9y1ihうろ覚えだけど、ES6で...があったような
0875デフォルトの名無しさん
2016/02/28(日) 13:12:14.75ID:owgscgJU0876デフォルトの名無しさん
2016/02/28(日) 17:12:37.24ID:++QKNm1D0877デフォルトの名無しさん
2016/02/29(月) 04:43:37.57ID:nFq7qn1mhttp://www.publickey1.jp/blog/16/visual_studio_codechrome.html
0878デフォルトの名無しさん
2016/02/29(月) 13:29:46.97ID:2WZsxuUYいいね。つーか、今までなかったのが問題。
0879デフォルトの名無しさん
2016/02/29(月) 15:17:01.65F5でデバッグ開始とか出来るんすかね
すごいじゃん
0880デフォルトの名無しさん
2016/02/29(月) 15:23:35.63ID:HA1lXX7z和訳とか書いてて全く訳されてねーぞおい
0881デフォルトの名無しさん
2016/02/29(月) 15:43:27.80ID:HA1lXX7z0882デフォルトの名無しさん
2016/02/29(月) 22:42:12.21ID:CdGG6jro0883デフォルトの名無しさん
2016/03/02(水) 10:47:36.78ID:feGTXuu1こっちはクライアント側の内容もOKですか?
それともサーバサイド限定ですか?
0884デフォルトの名無しさん
2016/03/02(水) 10:51:00.67ID:VnxQ1mQx0885デフォルトの名無しさん
2016/03/02(水) 16:51:14.81ID:6ui9eqXMここが本スレでいいのか?
0886デフォルトの名無しさん
2016/03/03(木) 02:37:37.99ID:DpvZjIDd0887デフォルトの名無しさん
2016/03/03(木) 12:37:26.25ID:1CnjBF0eここは荒らしが一番酷かった時期にテンプレ作ってる人が避難所として建てたスレ
今Web製作板で続いてるのは一度荒らしに潰された後にまた建て直したスレ
0888デフォルトの名無しさん
2016/03/03(木) 16:14:50.84ID:36qgesZJ0889デフォルトの名無しさん
2016/03/03(木) 17:03:04.97ID:RZS145YN0890デフォルトの名無しさん
2016/03/03(木) 17:04:59.79ID:eajzZFGl大丈夫
0891デフォルトの名無しさん
2016/03/03(木) 17:22:24.50ID:mSb5CsI70892デフォルトの名無しさん
2016/03/04(金) 00:11:55.90ID:2r5vBeAu0893デフォルトの名無しさん
2016/03/04(金) 03:23:00.07ID:uWFpW8iUこれ使えなくなったんですか?
0894デフォルトの名無しさん
2016/03/04(金) 03:26:45.34ID:uWFpW8iU0895デフォルトの名無しさん
2016/03/04(金) 07:38:21.33ID:CMO4mVzn0896デフォルトの名無しさん
2016/03/04(金) 07:40:10.49ID:d7osXy+s0897デフォルトの名無しさん
2016/03/04(金) 08:43:45.87ID:OJjul4c/0898デフォルトの名無しさん
2016/03/04(金) 23:19:01.61ID:uWFpW8iU0899デフォルトの名無しさん
2016/03/04(金) 23:45:00.25ID:gdje5nyo0900デフォルトの名無しさん
2016/03/05(土) 02:52:42.13ID:g+lUxJxQ<div id="unkomenu"></div> node[0]
..... ←ここを指定したい
<div id="unkomenu"></div> node[1]
<div id="unkomenu"></div> node[2]
どうすればいいですか?
0901デフォルトの名無しさん
2016/03/05(土) 03:07:03.20ID:g+lUxJxQ0902デフォルトの名無しさん
2016/03/05(土) 03:15:56.37ID:g+lUxJxQclassナメでいけました
0903デフォルトの名無しさん
2016/03/05(土) 05:39:47.15ID:g+lUxJxQ0904デフォルトの名無しさん
2016/03/05(土) 05:41:14.84ID:g+lUxJxQ0905デフォルトの名無しさん
2016/03/05(土) 05:46:51.80ID:g+lUxJxQ{
var xhr = new XMLHttpRequest();
xhr.open("GET",unkoURL);
xhr.send(null);
console.log(xhr); ←アップロードして走らせないとresponseText: ""になってしまってオフライン上で走らせられない
}
0906デフォルトの名無しさん
2016/03/05(土) 06:53:21.37HTTPRequestに応えるサーバが居ないだろ
0907デフォルトの名無しさん
2016/03/05(土) 12:37:20.65ID:4VOSHNz20908デフォルトの名無しさん
2016/03/05(土) 13:54:56.39ID:U5mUFT1+0909デフォルトの名無しさん
2016/03/05(土) 18:29:45.29ID:5EKNIcAxローカルファイルを読み込もうとしてるならこれでいけるんじゃない?
1. Chromeのショートカットのプロパティ開く
2. ショートカットタブのリンク先に以下追記
「{既にあるパスやらの後}△--allow-file-access-from-files」 ※:△は半角スペース
0910デフォルトの名無しさん
2016/03/05(土) 21:44:58.79ID:g+lUxJxQいけました
意味は何ですか?
0911デフォルトの名無しさん
2016/03/05(土) 21:53:19.90ID:g+lUxJxQ0912デフォルトの名無しさん
2016/03/05(土) 22:25:37.88ID:k8iimxyY+ JavaScript の質問用スレッド vol.129 +
http://echo.2ch.net/test/read.cgi/hp/1456250334/l50
0913デフォルトの名無しさん
2016/03/08(火) 07:01:08.16ID:UnVfEOQIどこでどれの関数使ってるのかもうワケわからんすぎて死にそう……
これ絶対後々メンテナンス出来る奴いなくなって負の遺産になる気がするんだけど
0914デフォルトの名無しさん
2016/03/08(火) 07:08:00.04ID:JBWz0dYt開発速度「だけ」を最優先で伸ばすためだ
メンテナンス性なんて考えてはいけない
0915デフォルトの名無しさん
2016/03/08(火) 08:44:04.77ID:sZ/VQ/J3いや、なんで出来ないのかのほうがわからんのだが?
ライブラリたった5個、6個だろ?
どういうときに困るのか言ってくれよ。
0916デフォルトの名無しさん
2016/03/08(火) 08:45:25.57ID:sZ/VQ/J3一般的にライブラリを使うとメンテナンス性は上がります。
なぜなら同じことを、そこに書くよりも
使ったほうが、コードの量は減るからです。
メンテナンスするべきコードの量が減るのです。
0917デフォルトの名無しさん
2016/03/08(火) 08:49:19.59ID:c3cSycoQは?
>>913
は?
0918デフォルトの名無しさん
2016/03/08(火) 10:10:37.15ID:V7sn28DSMarionette.js入れてるのにBackbone.jsの関数ばっか使って、本当にごく稀にいきなりMarionette.jsの関数使われたりでどこ調べりゃいいのか悪戦苦闘してる
C#とかなら呼び出し元辿ってどのライブラリの所属か一発で分かるのにそういうこと出来ないからどれについて調べればやってること理解できるのかサッパリ
そこまでバカにするのなら本人達で完結するならいいけと別言語のメンバーをヘルプにとか入れないでくれ
0919デフォルトの名無しさん
2016/03/08(火) 10:29:58.84ID:sZ/VQ/J3公式サイトで調べればいいだけだと思うけど?
今までどこ見てたのさw
0920デフォルトの名無しさん
2016/03/08(火) 10:31:51.72ID:c3cSycoQですね。馬鹿はドキュメントも見ずに、アホな解析を始めるから手におえません。
っていうかさ、JavaScript使いってこんな馬鹿ばかりなの?
0921デフォルトの名無しさん
2016/03/08(火) 10:36:49.35ID:sZ/VQ/J3お前もJavaScript使いのせいにするな。
0922デフォルトの名無しさん
2016/03/08(火) 10:45:43.75ID:v53LvxMN使用してるモジュールの生api触らせるとはなかなか変なプロジェクトだなぁ。
普通、アーキチームが作ったライブラリ経由で呼ぶもんじゃないの?csなんか使ったことあるメンバーだったら余計に。
ライブラリがクソいのであれば申し訳ないとしか言いようが無いかもしれんが。
0923デフォルトの名無しさん
2016/03/08(火) 10:51:12.45ID:sZ/VQ/J3なんのために?
ライブラリが使いづらいからという理由で
オレオレライブラリでラップするのは
アンチパターン。
0924デフォルトの名無しさん
2016/03/08(火) 10:58:55.97ID:V7sn28DS誰も説明してくんないからどのライブラリの公式見ればいいのかわっかんねーという話
ただでさえjavascript変な実装出来るのにどうして書くべきなのかすら見当もつかないから前に進むことすら出来ない
0925デフォルトの名無しさん
2016/03/08(火) 11:02:36.49ID:sZ/VQ/J3使用しているライブラリはわかるだろ。
最大でも5〜6個のライブラリのドキュメント見るだけだろ。
実際にそこに書いてあるコードを見ればどのライブラリだろうかって
予測つくんだから探し回ることもない。
最悪ブレークポイントでも置いてステップ実行すればいいだけ
0926デフォルトの名無しさん
2016/03/08(火) 11:17:10.70ID:V7sn28DSコードについては>>918
せめて統一されてればなぁ……やたら細かくviewが階層化されて処理が分散しまくってるし
最終的に成果物出せてはいるけど本職のjavascript使いなら途中から入ってもこんなの対応できるのか?って思ったから>>913だったんだよ
C#とかならどんだけ大きくなってもGoogleで検索するキーワードとか簡単に割り出せるからさ
0927デフォルトの名無しさん
2016/03/08(火) 11:19:30.75ID:sZ/VQ/J3俺なら知らなくても調べられるから
単にお前の能力不足。お前の会社の能力不足かもしれんがなw
ともかく言語のせいにするな。
0928デフォルトの名無しさん
2016/03/08(火) 11:48:19.11ID:V7sn28DSjavascriptの既存ソースに正規表現間違ってるようにしか見えない記述見つけたけどきっとこれも偉大なjavascript使い様が深謀遠慮した結果なんだろう
0929デフォルトの名無しさん
2016/03/08(火) 11:51:04.10ID:iEJDAbohつまりこういう事だろ?
0930デフォルトの名無しさん
2016/03/08(火) 11:52:13.14ID:yRHzElyn0931デフォルトの名無しさん
2016/03/08(火) 11:53:45.88ID:yRHzElynラッパーライブラリと継承や拡張は意味が違うからね。
継承や拡張はオリジナルの機能を失うこと無く
機能追加している。
ラッパーライブラリ、特にオレオレとか、
そういうのは、オリジナルの機能を制限してるので不便になる。
0932デフォルトの名無しさん
2016/03/08(火) 11:58:19.74ID:c3cSycoQまぁ、同梱のjqueryとCDNで取ってきたjqueryとで使った時に、同梱のは不具合無く動くが、
CDNのだと同じバージョンなのにへんな挙動でたりとかあって、
差分しらべたら、jquery自体に手が入っていたなんて事はあるけれどね。手抜きだねこれは。
0933デフォルトの名無しさん
2016/03/08(火) 11:59:50.00ID:yRHzElyn同じバージョン番号であるだけで
違うバージョンだ。
0934デフォルトの名無しさん
2016/03/08(火) 12:05:09.13ID:v53LvxMN使いづらいからな訳無いだろw
ライブラリから別のライブラリへの移行を楽にする為と、トランザクションじみた処理をコミット・ロールバックも含めた形でラップするとか、
複数ライブラリの引数の並び順を整理するとか、
普通に使うけど。
>>924
そりゃアーキがボンクラなんだと思うよ。
0935デフォルトの名無しさん
2016/03/08(火) 12:07:38.75ID:yRHzElyn> ライブラリから別のライブラリへの移行を楽にする為と、トランザクションじみた処理をコミット・ロールバックも含めた形でラップするとか、
見事なアンチパターンw
移行とか考えると、2つのライブラリに共通することしかできなくなるから、
性能を発揮できなくなる。便利な機能が使えなくなる。
トランザクションをラップすると、勝手に内部でトランザクションが行われるから
複数の処理をまとめたときに使いづらくなる。
0936デフォルトの名無しさん
2016/03/08(火) 12:11:06.62ID:yRHzElyn一つは階層構造の導入。フレームワーク・ライブラリに依存した部分を分離する。
その分離した部分ではフレームワーク・ライブラリの機能をフルに使っていいし
そうでない部分では使わない。
もう一つはヘルパーライブラリ。ある特定の処理専用に便利ツールを用意するだけで、
特定の部分以外はライブラリの機能を普通に使って良い。
原則として元々ある機能は全て使って良いとしなければいけない。
0937デフォルトの名無しさん
2016/03/08(火) 12:48:08.96ID:v53LvxMN2つのライブラリに共通する機能しか使えないってなんだよw
どっちも使えるようにする、じゃないよ?(笑)
例えば、ajaxでサーバにトークン投げてあるデータを取得するんだけど、失効してたらログイン処理投げて、トークン更新できるか試して更新できればそのまま続投、ダメならエラーにする、
みたいな処理を用意してて
・データを取得出来なかったら直近に取ったキャッシュに、キャッシュ値ですよフラグを立てて返す処理を足す
みたいな改修あったら自分の所に用意しとかないとめんどくさいし、
逆に、
jQuery使ってたけど、もうjQuery使ってるのajaxくらいだし、いつでも切れるようにsuperagentにajax系を載せ替えよう、ってなった時に全部直して回るのかって話じゃん。
superagentだとjsonpそのまま書けないから拡張書こうとか、そうなってDIが増えるのはわかるけど、
superagent自体に自分のシステムの処理を入れるのはDIを履き違えてるよ。
それこそ共通する機能しか発揮できなくなるけどね。
0938デフォルトの名無しさん
2016/03/08(火) 12:49:31.17ID:v53LvxMN階層構造の導入こそが、言ってる「ラッパーライブラリ」なんでは?
ラッピングして子階層に落としちゃうんだから。
0939デフォルトの名無しさん
2016/03/08(火) 12:51:54.04ID:v53LvxMN内部でトランザクションを切りたくないなら、そんなもんは、もともと「トランザクション」じゃない。
トランザクションはその中で中断「出来ないもの」を分離するべきなんだから、
大きなトランザクションであれば、それは単に大きなトランザクションか、そもそもやるべき事が間違ってる。
0940デフォルトの名無しさん
2016/03/08(火) 14:13:41.18ID:yRHzElynラッパーライブラリと階層構造は違う
>>922で書いてあるだろ?
> 使用してるモジュールの生api触らせるとはなかなか変なプロジェクトだなぁ。
> 普通、アーキチームが作ったライブラリ経由で呼ぶもんじゃないの?
生APIを触らせないようにして、ライブラリ経由で呼ぶって書いてある。
こういうのは階層構造ではない。
0941デフォルトの名無しさん
2016/03/08(火) 14:16:11.69ID:yRHzElyn> 内部でトランザクションを切りたくないなら、そんなもんは、もともと「トランザクション」じゃない。
トランザクションと処理は別物。
処理は単体で呼ぶ場合もあるし、複数まとめて呼ぶときもある。
本来、複数まとめて処理したときにそれをまとめるのがトランザクション。
なので処理単体にトランザクションを含ませるのは間違い。
DIコンテナタイプのサーバーサイドフレームワークを使えばわかるよ。
トランザクションは、処理の中ではなくて、処理の境目に
挿入するような仕組みになってる。
0942デフォルトの名無しさん
2016/03/08(火) 15:51:19.81ID:v53LvxMNだから、生apiを触らせずにライブラリで、依存しない形で利用するんだが。
それを生apiのラッパーと呼ぶか、M、V、CだとかVMだとか、どう呼ぶか呼ぶかなんかは瑣末な問題で。
実態としては、余計な事をさせずに生の実装に対しての依存度を下げる為のものが、フレームワークだよ。
ただ単に、2、3個のモジュールから便利そうな関数をexportしまくる物をラッパーライブラリと呼ぶんでるなら、それはお里が知れるとしか言い様が無いが。
>>941
お前頭おかしいか、実務経験無いのか?
いくつか纏めてトランザクション呼ぶトランザクションは、一つの大きなトランザクションであって、その際の、小さな一つずつトランザクションの存在意義は無いよ。
部分ロールバック可能であれば、そもそも分割すべき。
処理の中に入れるわけねえだろ。
分割不能なものがトランザクションだよ。
古典的な例を出すと、片方の口座の残高を引いて、片方の残高に足すまでがトランザクションだよ。
50%取り分の仲介者Bがいる時の、
口座Aの残高から100円引いて口座Bの残高に100円足して口座Bの残高から50円引いて口座Cの残高に50円足す動きは、2つのトランザクションではない。
0943デフォルトの名無しさん
2016/03/08(火) 15:59:22.79ID:yRHzElynだからそうすると、生APIの機能のうち使えないものが出てくるだろ。
全ての機能を使えるようにするには手間がかかる
使用しているライブラリがのバージョンが上がったら、
オレオレライブラリもいちいち対応するのか?アホらしいw
MVCとかいう話はしてねーよ。
0944デフォルトの名無しさん
2016/03/08(火) 16:01:44.25ID:yRHzElynだから100円引く処理の中にトランザクション処理を入れるな、
100円足す処理にトランザクション処理を入れるな。
処理の中にトランザクション処理を入れてはいけないって話だ。
計算処理とトランザクション処理は分離するべきもので、
一つにまとめたいときに、複数の処理の前後に挿入するものなんだよ。
0945デフォルトの名無しさん
2016/03/08(火) 17:35:59.53ID:V7sn28DSライブラリのバージョンって不具合が出たとかでもない限り安易に上げたりしないだろ?
動作保証の観点から言って
0946デフォルトの名無しさん
2016/03/08(火) 18:07:21.13ID:v53LvxMN馬鹿かよ。
使えないようにするんだよ。それが階層構造の..じゃねえの?それすら聞きかじっただけか?
使ってるライブラリのバージョンが上がったら?
上げねえよ。
上げるなら、対応計画切ってやるけど、その中で対応するのはそのライブラリだけで済むだろうが。
>>944
中に入れてねえよ…
全部がトランザクションだよ。どちらかと言うとトランザクションに包まれてるよ。
分割できない計算処理がトランザクションだよ。
100円引くのと100円足すのがトランザクションじゃないってどんな考え方だよ。
計算処理しないならトランザクションなんか要らねえじゃん。
相手方に100円足そうとして足せなかったから、引かなかったことにする、を綺麗な形でトランザクションから外して計算処理だけしてもらいたいもんだな。
0947デフォルトの名無しさん
2016/03/08(火) 18:10:03.08ID:v53LvxMNあ、お前なんか勘違いしてるのか?
2つのトランザクションじゃない、って事は、
小さなトランザクションを2つ連続で行う事を容認してるわけじゃないからな。
一つの大きなトランザクションで、そもそも分割不能だからナンセンスだ、存在意義も無い。
それはそれで別処理で作れ、って話だけど。
0948デフォルトの名無しさん
2016/03/08(火) 18:17:42.56ID:V7sn28DS>>944はSQL的な意味でのトランザクションとしては正しいように思える
これが違うというなら>>947はトランザクションの意味から説明した方が理解が捗ると思うけど
0949デフォルトの名無しさん
2016/03/08(火) 18:20:55.01ID:yRHzElyn> 使えないようにするんだよ。それが階層構造の..じゃねえの?それすら聞きかじっただけか?
やっぱり分かってないなw
もう一回書いてやろうか?
>>922で書いてあるだろ?
> 使用してるモジュールの生api触らせるとはなかなか変なプロジェクトだなぁ。
> 普通、アーキチームが作ったライブラリ経由で呼ぶもんじゃないの?
アーキチームは何をやってる?
アーキチームが作ったライブラリ経由で呼ぶ?
つまり生APIを使えるのはアーキチームだけ。
アーキチームはアーキテクチャを作るんじゃなくて、
ある一階層を作ってるのかよw
アーキテクチャって何かわかってるか?w
そういう話だよ。
0950デフォルトの名無しさん
2016/03/08(火) 18:40:21.69ID:V7sn28DS0951デフォルトの名無しさん
2016/03/08(火) 19:18:49.31ID:yRHzElynその通り。
階層構造に分離するってだけで、使うAPIを禁止するわけじゃない。
画面部分とビジネスロジックに担当者が分かれることで、
事実上使わないってことはあるかもしれないが、
それにしたって、
> 使用してるモジュールの生api触らせるとはなかなか変なプロジェクトだなぁ。
> 普通、アーキチームが作ったライブラリ経由で呼ぶもんじゃないの?
アーキテクチャチームが、画面部分かビジネスロジック部分かはしらないが、
生APIを隠すなんてことはしない。アーキテクチャチームは全体に渡って
設計するもので役割がおかしい。
0952デフォルトの名無しさん
2016/03/08(火) 19:54:06.48ID:v53LvxMN>>951
よくわからんな。
つまり、開発者は適当に好きなライブラリ使ってやってくれてオッケー、
管理も各自でやってね!
って感じなのか。
生API使わせないのどこか変なのか全然わからん。
全体にわたって設計するために、ある程度縛るのはあたりまえじゃね?
この画面のこのモジュールではこれ、ここではこれ、ここではこれ、って別々のモジュールを好き勝手呼んでたらwebpackしても肥大して仕方ないし、
この画面ではイベントベース、この画面ではpromise、この画面ではコールバックベースとなって、引き継ぎ大変だろ。
一生面倒見れるオープンソースプロジェクトでもあるまいし。
0953デフォルトの名無しさん
2016/03/08(火) 20:22:23.10ID:yRHzElyn誰も好きなライブラリを使ってOKとか書いてないし、
なんでそういう勘違いするんだ?
0954デフォルトの名無しさん
2016/03/08(火) 20:58:41.70ID:V7sn28DS0955デフォルトの名無しさん
2016/03/08(火) 23:11:13.01ID:ZAwwBadwJavaScriptスレに虚しさを感じたら以下へどうぞ。
http://echo.2ch.net/test/read.cgi/tech/1449440793/
俺はJavaScript本職ではないから、そちらと同様他言語出身としての見方になるが、
引っかかるところは同様の所だろうから。
JavaScriptのスレはどうにもおかしな奴が多すぎる。
(最近は他言語も酷いが)
以下は多分だが、、、
ライブラリが混在して使われているのは、実際に書いた奴はそれを普段使っているから。
だから彼等は問題を感じない。使い慣れている物を使っているだけ。
JavaScriptはその用途から、大規模で長く保守しなければならない事がほとんど無い。
だからきっちり設計することに慣れていてそれ前提でいると話が噛み合わない。
とはいえWebのUIの最前線の言語だから、実際に寿命も短い。
だからかっちり設計して時間をかけたところで意味がない。
さっさと動く物をリリースしていって、駄目なら最初から作り直すと割り切るのも一つの手だ。
この場合は使い慣れているライブラリを自由に使う事になる。おそらくそちらの状況がこれだ。
そちらの感覚に合わせると、sh, awk, perl, ruby の書き捨て数行スクリプト同程度というべきか。
クライアントスクリプトの場合は、「毎回」「常に」「同意無し」で最新版がダウンロードされて使われる。
だからバグっていても差し替えに手間取ることもないし、最悪「リロードしてください」で済む。
サイレントリコールもありありだろう。(というか気づかれない)
ここら辺は他言語の商用アプリとは根本的に違う。だから開発のスタイルも自ずと異なってくる。
先のスレは質問スレではないので、
・これってどうやるの?←少なくとも他言語でそれが出来るようになってから来い
・これってどうなのよ?←ああ、それはなあ、、、、(今回)
ということになる。
そして繰り返すが俺はJavaScript本職ではない。それでよければ。
0956デフォルトの名無しさん
2016/03/08(火) 23:52:21.79ID:gX55kFUW引用からして一方はいつもの奴だから話半分でいいと思うけどね
あと950踏んだなら次スレよろしく
0957955
2016/03/09(水) 00:16:05.36ID:1eDcIrNxいや君が立てるべきだ。
950は多分このスレには新参だ。
俺は多分1年くらいいるが、それでも君らが何をしたいのか分からない。
少なくとも、訳の分からないテンプレ争いに新人を巻き込むべきではないし、
このスレのテンプレの完全コピーでいいのでなければ新人に頼むべきではない。
少なくともこのスレのテンプレには次ぎスレ指示は入っていないから、950は関知していない。
また、この板には124がまだあるわけだが、それが駄目な理由も950には分からないだろ。
だったら、ここら辺を分かる人が立てるべきだ。
その際に、改訂すべき部分は改訂しておけばいい。
0958956
2016/03/09(水) 00:56:42.17ID:S0itb4sMなるほど言い分はもっともだわ
とはいえ俺も既に滅茶苦茶に乱立していた状況からしか知らんのだが
まず前置きとして、JS質問スレの現状は>>883以降にまとまってると思う
テンプレ改定はそもそもテンプレの中の人がWeb製作板で書き直したものがあるけど
荒らされてついには雑談禁止まで至ったものをここで使うのも適切ではないだろうから
今回は従来のものをそのまま使うので必要なら次スレで改定議論してほしい
0959デフォルトの名無しさん
2016/03/09(水) 01:02:43.56ID:S0itb4sM+ JavaScript の質問用スレッド vol.119 + [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1457452716/
0960デフォルトの名無しさん
2016/03/09(水) 12:05:37.15ID:Ul54lJM10961デフォルトの名無しさん
2016/03/09(水) 15:24:09.24ID:S0itb4sM他は無理だな
0962デフォルトの名無しさん
2016/03/10(木) 13:15:59.90ID:nlYLYIl+そうですか
やっぱり無理なんですね
ありがとうございました!
0963デフォルトの名無しさん
2016/03/10(木) 14:40:46.11ID:oCKA3bvp0964デフォルトの名無しさん
2016/03/10(木) 14:49:50.09ID:cOoRDwdC0965デフォルトの名無しさん
2016/03/12(土) 09:28:17.27ID:VuT0YpOPChangeやblurは一連の入力が終わってから発生するので目的に合いません
Keydownやkeyupはかなり目的に近いのですがマウスを使った編集に反応しません
0966デフォルトの名無しさん
2016/03/12(土) 09:33:23.66ID:MdoZbOS8昔いろんなイベントを使って監視して、
変更時に独自のイベントを発生させる
jQueryプラグイン作ったことあるな。
0967デフォルトの名無しさん
2016/03/12(土) 09:54:07.62ID:SQSEHhDOhttps://developer.mozilla.org/ja/docs/Web/Events/input
http://caniuse.com/#feat=input-event
0968デフォルトの名無しさん
2016/03/12(土) 10:12:59.19ID:lYynFgyiそのプラグインのURLを教えてくれないと回答にならないのでは?
IE9のバグはなかなか致命的なので補完できるなら実装した方がいいだろうな
delete bug は keydown で補完できるとして、cut は Clipboard API で補完できるんかね
0969デフォルトの名無しさん
2016/03/12(土) 11:13:53.34ID:OwLY3dTs$resourceを使ってサーバーとやりとりしユーザーデータを管理しているserviceがあって、このserviceのサーバーとのやり取りに関する関数をcontrollerでボタンのクリック時に起動する関数に囲っています
ここまではわかったのですがservice内のデータが更新されたとき
どうやってcontrollerの$scopeに値を同期させるかを迷っています
今はservice内で$resourceのアクション?のコールバック内でservice内の値を更新し$rootScopeに向けてイベントを発行しcontrollerはそれを聞くたびに$scopeの値を更新しています
これよりもserviceの関数は$resourceのアクションのpromiseを返してcontrollerはそのpromiseを使ってコールバックを書くのかどっちがいいのでしょうか?
promiseはservice内の値を更新してから返します
service内の値は色々なところで使いたいです
こういう場合はどうするのが普通なのでしょうか?
独学でやっていてだんだん混乱してきたので変な質問かもしれません
0970デフォルトの名無しさん
2016/03/12(土) 11:22:00.50ID:OwLY3dTs$rootScopeにブロードキャストさせるです
0971デフォルトの名無しさん
2016/03/12(土) 15:07:36.36ID:VuT0YpOPありがとうございます
うまく行きました
0972デフォルトの名無しさん
2016/03/13(日) 22:45:12.48ID:csVJMymOwatchが本筋
0973デフォルトの名無しさん
2016/03/14(月) 22:39:52.27ID:lJ6PDaUjなるほどwatchですか
確かに値を監視して同期させるという意味にそのままあってそうですね
ありがとうございます
たびたび質問ですみません
Angularについてですcontrollerから呼び出すserviceAの関数が別serviceBが持つ値に依存するとき
serviceAにserviceBを注入して関数内で固定して使うよりも
controller側でserviceAとserviceBを注入してserviceAの関数をserviceBの値を引数として呼び出すほうが
service(モデル?)同士が分離できていて大きくなった時後々苦労が少ないってイメージを書いていて思ったのですが間違ってはいないですか?
0974デフォルトの名無しさん
2016/03/15(火) 11:58:09.20ID:je+WaRQnあと() => {}も使っても問題ないですか?
0975デフォルトの名無しさん
2016/03/15(火) 12:31:20.52ID:I/SC09ishttps://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/arrow_functions
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/let
0976デフォルトの名無しさん
2016/03/15(火) 12:39:46.45ID:dn4mluAf確かに未サポートだけど、MDNではSafariは?になっているような
http://kangax.github.io/compat-table/es6/
http://caniuse.com/#search=let
0977デフォルトの名無しさん
2016/03/15(火) 14:10:19.09ID:9TmQQfsXbabelを使って変換すれば
古いブラウザでも動くよ
0978デフォルトの名無しさん
2016/03/15(火) 14:11:47.55ID:9TmQQfsX実は古いAndroidスマホ対応だったりするわけだけどねw
0979デフォルトの名無しさん
2016/03/15(火) 16:46:31.51ID:klVcIh6V0980デフォルトの名無しさん
2016/03/15(火) 22:59:08.19ID:23WcffoNviewが絡まない限りそこまでしないでいいよ
逆にコントローラーが肥大化する
0981デフォルトの名無しさん
2016/03/16(水) 10:32:21.16ID:DWd03YbI0982デフォルトの名無しさん
2016/03/17(木) 10:19:02.14ID:wQ7g2qGB2.4ってIE?
0983デフォルトの名無しさん
2016/03/17(木) 13:40:53.68ID:aFB20JuL流れ的にAmdroid OSのバージョンでは?
0984デフォルトの名無しさん
2016/03/17(木) 14:12:54.11ID:LtlKgYTa俺はtypeScript押し! playgroundから補完効くの気持ちいい!
0985デフォルトの名無しさん
2016/03/17(木) 14:19:39.58ID:KIngzVrZ生JSで今書いてるならBabelの方が楽だと思う
0986デフォルトの名無しさん
2016/03/18(金) 13:26:08.35ID:qgVzYe8h0987デフォルトの名無しさん
2016/03/18(金) 13:45:57.08ID:8ofbdWvy0988デフォルトの名無しさん
2016/03/18(金) 13:57:19.83ID:FZ8Syrlv0989デフォルトの名無しさん
2016/03/19(土) 13:31:22.84ID:LDQ1EFLl0990デフォルトの名無しさん
2016/03/19(土) 14:01:55.81ID:+cxBRpaX0991デフォルトの名無しさん
2016/03/19(土) 14:21:21.34ID:7WDpnV8l0992デフォルトの名無しさん
2016/03/19(土) 14:41:44.34ID:MNmjmgAAes2015にimportの定義があるの?
その場合はプラウザで使う場合はどうなるんだろ?ネットワーク経由で持ってきてくれるのか?
0993デフォルトの名無しさん
2016/03/19(土) 15:15:43.61ID:+cxBRpaX0994デフォルトの名無しさん
2016/03/19(土) 18:33:02.47ID:3qG5a3Tt0995デフォルトの名無しさん
2016/03/19(土) 21:59:58.69ID:Zs2nLmW7それで間に合わないなら向いてないから転職すべき
0996デフォルトの名無しさん
2016/03/20(日) 03:47:04.60ID:MJknwlhg0997デフォルトの名無しさん
2016/03/20(日) 15:32:07.34ID:UabNifz10998デフォルトの名無しさん
2016/03/21(月) 09:27:24.45ID:Xz9aFOH3梅酒の梅がとても美味しいお土産です。
0999デフォルトの名無しさん
2016/03/21(月) 09:41:56.46ID:lwkXzPK7それすっげーまずいだろw
お前の舌おかしいんじゃねーの?www
1000デフォルトの名無しさん
2016/03/21(月) 09:42:33.24ID:lwkXzPK710011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
life time: 334日 8時間 7分 25秒
10021002
Over 1000Thread運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
http://premium.2ch.net/
http://pink-chan-store.myshopify.com/
レス数が1000を超えています。これ以上書き込みはできません。