( ^ω^) 初学者・迷子・ロリ幼女はこちらで
_、_
( ,_ノ` ) プロフェッショナルはECMAScript デス 4へ
【前スレ】
JavaScript 3
http://peace.2ch.net/test/read.cgi/tech/1380177260/
【関連スレ】
ECMAScript デス 4
http://peace.2ch.net/test/read.cgi/tech/1325448978/
+ JavaScript の質問用スレッド vol.117 +
http://peace.2ch.net/test/read.cgi/tech/1404146244/
CoffeeScript
http://peace.2ch.net/test/read.cgi/tech/1320949260/
TypeScript part1
http://peace.2ch.net/test/read.cgi/tech/1349187527/
構造化ウェブプログラミング言語Dart2
http://peace.2ch.net/test/read.cgi/tech/1319388343/
Microsoft SkyDrive API
http://peace.2ch.net/test/read.cgi/tech/1385604796/
【MACRO】Google Apps Script 質問スレ【DRIVE】
http://peace.2ch.net/test/read.cgi/tech/1404007623/
【node.js】サーバサイドjavascript 2【Rhino】
http://peace.2ch.net/test/read.cgi/tech/1358937029/
JavaScript 4©2ch.net
2014/12/05(金) 12:19:07.19ID:fmzBASgG
2015/02/19(木) 00:01:52.76ID:4zgsUurY
>>79
直した…スマソ
function test(hoge, foo) {
'use strict';
if (typeof hoge === 'boolean') {
console.log('hoge is', hoge);
} else if (hoge && typeof hoge === 'object') {
if (hoge.hasOwnProperty('hoge') && typeof hoge.hoge === 'boolean') {
console.log('hoge is', hoge.hoge);
}
if (hoge.hasOwnProperty('foo') && typeof hoge.foo === 'boolean') {
console.log('foo is', hoge.foo);
}
}
}
直した…スマソ
function test(hoge, foo) {
'use strict';
if (typeof hoge === 'boolean') {
console.log('hoge is', hoge);
} else if (hoge && typeof hoge === 'object') {
if (hoge.hasOwnProperty('hoge') && typeof hoge.hoge === 'boolean') {
console.log('hoge is', hoge.hoge);
}
if (hoge.hasOwnProperty('foo') && typeof hoge.foo === 'boolean') {
console.log('foo is', hoge.foo);
}
}
}
2015/02/19(木) 00:46:16.03ID:+Jg4S+WS
>>80
JavaScript難しいなぁ
Array.prototype.slice.call(hoge);
ってするときに
hoge = {length:4.5} => 4コ
hoge = {length:Infinity} => 0コ
hoge = {length:99999999999 } => フリーズ
hoge = {length:-0.1} => 0コ
hoge = {length:-1} => フリーズ
hoge = {length:NaN} => 0コ
hoge = {length:true} => 1コ
うーむ・・・
でかいのはまだしも、負数を渡すとフリーズするのは内部で何をしているんだろう
JavaScript難しいなぁ
Array.prototype.slice.call(hoge);
ってするときに
hoge = {length:4.5} => 4コ
hoge = {length:Infinity} => 0コ
hoge = {length:99999999999 } => フリーズ
hoge = {length:-0.1} => 0コ
hoge = {length:-1} => フリーズ
hoge = {length:NaN} => 0コ
hoge = {length:true} => 1コ
うーむ・・・
でかいのはまだしも、負数を渡すとフリーズするのは内部で何をしているんだろう
2015/02/19(木) 01:00:49.63ID:4zgsUurY
>>82
sliceがマイナスの値は最後から処理するからな気がする
lengthがマイナスなのは配列とは言えないから
やっぱり
if (hoge && hoge.length > 0) {
var hogeArray = Array.prototype.slice.call(hoge);
}
ってのは必要だね
sliceがマイナスの値は最後から処理するからな気がする
lengthがマイナスなのは配列とは言えないから
やっぱり
if (hoge && hoge.length > 0) {
var hogeArray = Array.prototype.slice.call(hoge);
}
ってのは必要だね
2015/02/19(木) 01:35:12.55ID:iPujbk1h
2015/02/19(木) 08:45:08.63ID:ACeVxkIV
>>76
> 単にnullチェック抜けてるって言えば済む問題を○型が考慮されてないとか
> お前の方が素人丸出しだ
そのコードは typeof 演算子の "Object (native and does not implement [[Call]])" しか対応できてないだろう?
http://es5.github.io/#x11.4.3
前方互換性をふまえれば、ES6 でも正しく判定出来ることが望ましい
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-typeof-operator
Null 型を誤検知するだけなら「Object 型の一部」とはいわない
あなたは ECMAScript 仕様書をまともに読んだことがないだろう?
ES 仕様に言及している意見に反論するなら仕様書ぐらい読んで欲しい
>>78
> >>65 はそもそも何を持って配列のようなオブジェクトといいたいのだろう
わかりやすくいうならば、 Array.prototype.forEach と同様の判定といえるかな
Array.prototype.forEach では ToObject, ToInt32 で型変換しているわけだが、型変換せずに TypeError を返したい状況もあるだろう
http://es5.github.io/#x15.4.4.18
> 単にnullチェック抜けてるって言えば済む問題を○型が考慮されてないとか
> お前の方が素人丸出しだ
そのコードは typeof 演算子の "Object (native and does not implement [[Call]])" しか対応できてないだろう?
http://es5.github.io/#x11.4.3
前方互換性をふまえれば、ES6 でも正しく判定出来ることが望ましい
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-typeof-operator
Null 型を誤検知するだけなら「Object 型の一部」とはいわない
あなたは ECMAScript 仕様書をまともに読んだことがないだろう?
ES 仕様に言及している意見に反論するなら仕様書ぐらい読んで欲しい
>>78
> >>65 はそもそも何を持って配列のようなオブジェクトといいたいのだろう
わかりやすくいうならば、 Array.prototype.forEach と同様の判定といえるかな
Array.prototype.forEach では ToObject, ToInt32 で型変換しているわけだが、型変換せずに TypeError を返したい状況もあるだろう
http://es5.github.io/#x15.4.4.18
2015/02/19(木) 12:11:41.51ID:k55gX30E
>>85
> そのコードは typeof 演算子の "Object (native and does not implement [[Call]])" しか対応できてないだろう?
それで事足りてるという事は仕様的に問題ないという事だ
対応できてない事で実用的に問題があるコード例を挙げて説明してくれ
そもそもJavaScriptは
var obj0 = {hoge:true, foo:false};
var obj1 = {foo:false, bar:1, hoge:true};
function Hoge() {this.hoge = true; this.foo = false;}
var obj2 = new Hoge();
のどれを渡されても同じように機能する事が期待されている
!obj(nullとundefinedのチェック)とプロパティーの存在チェック(と最終的に'number'などの型チェック)以外に必要だとは思えない
> そのコードは typeof 演算子の "Object (native and does not implement [[Call]])" しか対応できてないだろう?
それで事足りてるという事は仕様的に問題ないという事だ
対応できてない事で実用的に問題があるコード例を挙げて説明してくれ
そもそもJavaScriptは
var obj0 = {hoge:true, foo:false};
var obj1 = {foo:false, bar:1, hoge:true};
function Hoge() {this.hoge = true; this.foo = false;}
var obj2 = new Hoge();
のどれを渡されても同じように機能する事が期待されている
!obj(nullとundefinedのチェック)とプロパティーの存在チェック(と最終的に'number'などの型チェック)以外に必要だとは思えない
2015/02/19(木) 13:17:52.04ID:VHEGaKii
実際、>>72が直感的にコードを書いて多数間違えたぐらいだからなあ
rypeof演算子に関しては良い仕様とは言い難い
rypeof演算子に関しては良い仕様とは言い難い
2015/02/19(木) 15:27:06.03ID:/+bx2aTM
なにがArrayLikeかは難しいよ。どういう目的で区別するかで変わると思う。なぜなら何を配列と見立てられるかは用途によって変わるから。
例えば配列に変換したいという場合なら、ES6のArray.fromを参考にすると、
lengthを持っているか(オブジェクトでなくともラッパーのプロトタイプにあればいい)、イテラブルならOK。
これが広義のArrayLikeだろう。
またはArray.prototype.concatで、引数をSpreadすべきかどうかなら、実は配列かどうかというチェックだと問題がある。
だからES6からは@@isConcatSpreadableのチェックに変わった。
要するに「一般的なArrayLikeの判定」を定義するのは無理というか、しても役に立つものにならないと思う。
例えば配列に変換したいという場合なら、ES6のArray.fromを参考にすると、
lengthを持っているか(オブジェクトでなくともラッパーのプロトタイプにあればいい)、イテラブルならOK。
これが広義のArrayLikeだろう。
またはArray.prototype.concatで、引数をSpreadすべきかどうかなら、実は配列かどうかというチェックだと問題がある。
だからES6からは@@isConcatSpreadableのチェックに変わった。
要するに「一般的なArrayLikeの判定」を定義するのは無理というか、しても役に立つものにならないと思う。
2015/02/19(木) 16:24:08.30ID:+Jg4S+WS
>>86
プロトタイプチェインはたどらないの?
プロトタイプチェインはたどらないの?
2015/02/19(木) 19:11:01.43ID:FI1nksg/
>>88
> ES6のArray.fromを参考にすると、lengthを持っているか(オブジェクトでなくともラッパーのプロトタイプにあればいい)、イテラブルならOK。
Array.from は配列に変換する、つまり Object 型に変換するから変換元が Object 型であることを求めないだけな気がする
ierator を除くと Array.from は ToObject, ToLength(Int32への変換)をしている
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.from
変換後のオブジェクトが ArrayLike と考えられるので ArrayLike は「Object 型」「Int32のlengthプロパティを持つ」になる
Array.from の挙動は>>85で説明されている Array.prototype.forEach の挙動と一致する
Array.prototype 系メソッドを一通り読めばわかると思うけど、全てそういう挙動になってるよ
対象を isArrayLike で判定して例外を返すか、ArrayLike に変換するか、は意見が別れる(ポリシーに依る)だろうけどね
ES6 の挙動に合わせるなら変換する方になる
> ES6のArray.fromを参考にすると、lengthを持っているか(オブジェクトでなくともラッパーのプロトタイプにあればいい)、イテラブルならOK。
Array.from は配列に変換する、つまり Object 型に変換するから変換元が Object 型であることを求めないだけな気がする
ierator を除くと Array.from は ToObject, ToLength(Int32への変換)をしている
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.from
変換後のオブジェクトが ArrayLike と考えられるので ArrayLike は「Object 型」「Int32のlengthプロパティを持つ」になる
Array.from の挙動は>>85で説明されている Array.prototype.forEach の挙動と一致する
Array.prototype 系メソッドを一通り読めばわかると思うけど、全てそういう挙動になってるよ
対象を isArrayLike で判定して例外を返すか、ArrayLike に変換するか、は意見が別れる(ポリシーに依る)だろうけどね
ES6 の挙動に合わせるなら変換する方になる
2015/02/19(木) 21:45:10.46ID:/+bx2aTM
ToObjectがかかっているのは、null/undefinedはじきや、Getやらもろもろの処理がObjectであることを期待しているためだからであって、処理の本質とはあまり関係ないけどね。
あとToLengthはInt32でなく2^53-1までの整数。
長さを拡張すべきという問題が出て、Arrayに関しては互換性問題で見送られたけど、型付配列は長さ2^53-1までになったから、ここに関しても絶対基準はないと思う。
別にこの範囲でなくともエラーになるわけではなくて、範囲に収まるように強制されるだけだし。
あとToLengthはInt32でなく2^53-1までの整数。
長さを拡張すべきという問題が出て、Arrayに関しては互換性問題で見送られたけど、型付配列は長さ2^53-1までになったから、ここに関しても絶対基準はないと思う。
別にこの範囲でなくともエラーになるわけではなくて、範囲に収まるように強制されるだけだし。
2015/02/19(木) 22:21:02.70ID:cTS5FQ8e
>>91
なるほど
ES6 の Array.prototype.forEach の length も 2^53-1 に拡張されてるんだな
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.foreach
今後、更に拡張される可能性を考えると、length に関しては Number.isInteger の判定ぐらいでいいのかもしれないな
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isinteger
なるほど
ES6 の Array.prototype.forEach の length も 2^53-1 に拡張されてるんだな
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.foreach
今後、更に拡張される可能性を考えると、length に関しては Number.isInteger の判定ぐらいでいいのかもしれないな
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isinteger
2015/02/23(月) 05:03:25.31ID:m2dP1v8u
別に整数かどうかの判定は要らないだろう。
「"5"」だったら「5」、「true」だったら「1」になるのがJS流だし。
整数の長さが欲しければ「len = obj.length|0」とするのがJS流。
「"5"」だったら「5」、「true」だったら「1」になるのがJS流だし。
整数の長さが欲しければ「len = obj.length|0」とするのがJS流。
94デフォルトの名無しさん
2015/02/24(火) 00:54:33.32ID:XD7S4Fuq try catchって頻繁に呼び出す関数では最適化できなくて遅くなるから使っちゃいけないのか?
知らなかった…Chromeのプロファイラに出ていた警告を見て初めて知った
知らなかった…Chromeのプロファイラに出ていた警告を見て初めて知った
2015/02/24(火) 11:35:35.42ID:SsySdaPd
2015/02/24(火) 12:16:53.92ID:lFZ8d0+y
関数全体を覆わなければ問題ない。
一番ベストな使い方は関数呼び出しの部分だけに使用する。
try{ func() }
そうでなくても全体で使用しなければ、tryの掛かっていない部分はfor文等一定のブロックごとに最適化が働く。
一番ベストな使い方は関数呼び出しの部分だけに使用する。
try{ func() }
そうでなくても全体で使用しなければ、tryの掛かっていない部分はfor文等一定のブロックごとに最適化が働く。
2015/02/24(火) 12:32:14.82ID:6vv1mCHr
>>94
try catchの使い方を間違えてるんでしょ。
try catchを正しく使うということは
try catchを使わないことを意味するw
何を行っているかわからないと思うが、
基本的に、windowのerrorイベントを使えばいいんだよ。
errorイベントは、誰もcatchしない時に呼ばれる所。
ここでまとめて処理すればいいし、普通はここで処理するもの。
例外的に途中でcatchしなくちゃいけない時だけcatchをする。
だからtry catchを正しく使う = try catchを使わないということになる。
逆に間違った使い方をしていると、catchしてalert()とかreturn falseとかするから、
間違った使い方 = try catchが多くなる。
try catchの使い方を間違えてるんでしょ。
try catchを正しく使うということは
try catchを使わないことを意味するw
何を行っているかわからないと思うが、
基本的に、windowのerrorイベントを使えばいいんだよ。
errorイベントは、誰もcatchしない時に呼ばれる所。
ここでまとめて処理すればいいし、普通はここで処理するもの。
例外的に途中でcatchしなくちゃいけない時だけcatchをする。
だからtry catchを正しく使う = try catchを使わないということになる。
逆に間違った使い方をしていると、catchしてalert()とかreturn falseとかするから、
間違った使い方 = try catchが多くなる。
2015/02/24(火) 12:48:11.36ID:wY5F80Ar
>>94
try-catch は例外を捕捉しなければエラー処理出来ない場合に使うもの
例外が発生する条件は確定しているのだから、 try-catch を使わなくても対応出来る場合が大半を占める
try-catch を使うのは new ActiveXObject() で対応する引数に応じて処理を分ける等の例外的なケースに限られる
try-catch は例外を捕捉しなければエラー処理出来ない場合に使うもの
例外が発生する条件は確定しているのだから、 try-catch を使わなくても対応出来る場合が大半を占める
try-catch を使うのは new ActiveXObject() で対応する引数に応じて処理を分ける等の例外的なケースに限られる
2015/02/24(火) 16:54:22.71ID:gLNZIunY
netbeansを使ってるんだけど最初にテンプレが出ますよね?あれを編集する方法ないですか?
100デフォルトの名無しさん
2015/02/25(水) 22:58:43.24ID:JtIRtORE 現行スレ
+ JavaScript の質問用スレッド vol.123 + [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/hp/1423915644/
+ JavaScript の質問用スレッド vol.123 + [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/hp/1423915644/
101デフォルトの名無しさん
2015/02/25(水) 23:20:48.35ID:JFD+ngFs102デフォルトの名無しさん
2015/02/27(金) 18:16:56.06ID:6eP810Kn >>101
テンプレのタグが分かりません・・・
テンプレのタグが分かりません・・・
103デフォルトの名無しさん
2015/02/27(金) 19:56:27.10ID:Wvtuv0/g >>102
それは自分で努力すればいいよね?
それは自分で努力すればいいよね?
104デフォルトの名無しさん
2015/03/13(金) 19:23:10.11ID:UBRcUR4y jsonの日
105デフォルトの名無しさん
2015/04/12(日) 11:08:10.55ID:7j69OB5F 『関数型プログラミングに目覚めた! IQ145の女子高校生の先輩から受けた特訓5日間』
http://www.amazon.co.jp/dp/4798043761/
せっかくだからJavaScriptで関数型プログラミングを学んでみるのも面白いかもしれないな。
http://www.amazon.co.jp/dp/4798043761/
せっかくだからJavaScriptで関数型プログラミングを学んでみるのも面白いかもしれないな。
106デフォルトの名無しさん
2015/04/12(日) 17:02:14.80ID:PVRHL1t5 >>105
Qiitaアカバンされたポエマー、毛の壁先生じゃんw
Qiitaアカバンされたポエマー、毛の壁先生じゃんw
107デフォルトの名無しさん
2015/05/18(月) 15:33:55.56ID:lIw4CyOJ JavaScriptが20周年。開発者のBrendan Eich氏が過去と未来についてのスライドを公開
ttp://www.publickey1.jp/blog/15/javascript20brendan_eich.html
ttp://www.publickey1.jp/blog/15/javascript20brendan_eich.html
108デフォルトの名無しさん
2015/05/18(月) 17:37:17.88ID:rf0kuBu1109デフォルトの名無しさん
2015/05/20(水) 01:48:48.87ID:zDiYcCDM 言語としてはかなりシンプルだったからな。
LexとYacc使っただろうし、スタックマシンな
バイトコードインタープリタはSchemeのインタープリタを
Cで書いたことがあれば難しくない。
コードを10日で書いたからクソというよりは、
書く前に言語仕様をきちんと練らなかったからクソなんだろう。
LexとYacc使っただろうし、スタックマシンな
バイトコードインタープリタはSchemeのインタープリタを
Cで書いたことがあれば難しくない。
コードを10日で書いたからクソというよりは、
書く前に言語仕様をきちんと練らなかったからクソなんだろう。
110デフォルトの名無しさん
2015/05/20(水) 05:27:02.66ID:iajmjkjM 10日で書いたにしては良くできてるけど、もともとVBAみたいなものなのに、
後からいろいろ理屈を考えて素晴らしいものみたいに言いくるめようと
したのがいけなかったんじゃないの。
アプリに付属させるマクロだと思えば、納得の仕様だと思うけど。
元々そういうものなんだし。
後からいろいろ理屈を考えて素晴らしいものみたいに言いくるめようと
したのがいけなかったんじゃないの。
アプリに付属させるマクロだと思えば、納得の仕様だと思うけど。
元々そういうものなんだし。
111デフォルトの名無しさん
2015/05/20(水) 11:19:23.20ID:0vsGwB+G >>109
すまないが、ゴミをシンプルって言う風潮やめてくれるか?
すまないが、ゴミをシンプルって言う風潮やめてくれるか?
112デフォルトの名無しさん
2015/05/20(水) 12:06:13.47ID:D22K7RGs ClojureScript使い始めたらJSのクソさが
気にならなくなってきた。
気にならなくなってきた。
113デフォルトの名無しさん
2015/05/20(水) 12:18:11.33ID:qzEPJuIN 誰でも10日で出来る作業なら
クソだろうさw
10日でとても出来ないような作業を
10日で作ったのならば、それは優秀ってことだよ。
優秀な人が作ったのだから、とても良く出来ている。
クソだろうさw
10日でとても出来ないような作業を
10日で作ったのならば、それは優秀ってことだよ。
優秀な人が作ったのだから、とても良く出来ている。
114デフォルトの名無しさん
2015/05/20(水) 14:27:44.16ID:0vsGwB+G >>113←こういうの権威主義の馬鹿っていうんだよねぇ。日本人に実に多い。
115デフォルトの名無しさん
2015/05/20(水) 15:12:28.11ID:qzEPJuIN どれだよ権威ってw
権威じゃなくて実力だろw
権威じゃなくて実力だろw
116デフォルトの名無しさん
2015/05/23(土) 05:06:34.47ID:aWFfanUl jsスレでdisるのもアレだけど
権威主義以外の何物でもない
10日で作ったのは凄いかもしれんが別に洗練されてもないしシンプルでもない
初期のjsって文字列演算、暗黙変換とか無駄に長いfunctionとか、
中途半端にvbやC++の真似もしてて、バージョン違いの挙動もあって普通にクソ
初期のを優秀とか言う奴はES6使わないで欲しい
本人はサブセット言語嫌いとかlisp嫌いとか好き勝手言ってるみたいだけど
素直にパクリ元のselfのサブセットを素直に実装すりゃよかったと思うわ
権威主義以外の何物でもない
10日で作ったのは凄いかもしれんが別に洗練されてもないしシンプルでもない
初期のjsって文字列演算、暗黙変換とか無駄に長いfunctionとか、
中途半端にvbやC++の真似もしてて、バージョン違いの挙動もあって普通にクソ
初期のを優秀とか言う奴はES6使わないで欲しい
本人はサブセット言語嫌いとかlisp嫌いとか好き勝手言ってるみたいだけど
素直にパクリ元のselfのサブセットを素直に実装すりゃよかったと思うわ
117デフォルトの名無しさん
2015/05/23(土) 08:57:54.91ID:3bf42BAL だいたい名前からしてクソだよ。
全然関係無いJavaパクってるんだし。
全然関係無いJavaパクってるんだし。
118デフォルトの名無しさん
2015/05/23(土) 10:54:12.24ID:vTpQyjFi119デフォルトの名無しさん
2015/05/24(日) 00:11:51.40ID:hZNW9MV5120デフォルトの名無しさん
2015/05/24(日) 13:15:55.75ID:bCeKXRbu >>119
じゃあどこが権威主義なのか
噛み砕いて説明してください。
その前に前提として権威主義とは何かを書いておきますね。
http://ja.wikipedia.org/wiki/%E6%A8%A9%E5%A8%81%E4%B8%BB%E7%BE%A9
> 権威主義(けんいしゅぎ)とは、権威に服従するという個人や社会組織の姿勢、思想、体制である[1][2]。権威主義の反対は個人主義や民主主義である。
> 政治学上の用法では、権威主義体制とは非民主的な体制の総称であり、通常は独裁、
> 専制、全体主義などを含むが、権威主義体制を民主主義体制と全体主義体制の中間とする立場もある[5][6]。
http://d.hatena.ne.jp/keyword/%B8%A2%B0%D2%BC%E7%B5%C1
> 権威(人を服従、強制させる力)に価値をおき、それに対して自己卑下や盲目的服従をする態度のこと。
> また逆に人にそれを要求する態度のこと。心理学的には、権威や伝統、社会的に価値のあると
> されているものを無批判に承認し、これに服従、依存し、融通が利かないパーソナリティを指す。
じゃあどこが権威主義なのか
噛み砕いて説明してください。
その前に前提として権威主義とは何かを書いておきますね。
http://ja.wikipedia.org/wiki/%E6%A8%A9%E5%A8%81%E4%B8%BB%E7%BE%A9
> 権威主義(けんいしゅぎ)とは、権威に服従するという個人や社会組織の姿勢、思想、体制である[1][2]。権威主義の反対は個人主義や民主主義である。
> 政治学上の用法では、権威主義体制とは非民主的な体制の総称であり、通常は独裁、
> 専制、全体主義などを含むが、権威主義体制を民主主義体制と全体主義体制の中間とする立場もある[5][6]。
http://d.hatena.ne.jp/keyword/%B8%A2%B0%D2%BC%E7%B5%C1
> 権威(人を服従、強制させる力)に価値をおき、それに対して自己卑下や盲目的服従をする態度のこと。
> また逆に人にそれを要求する態度のこと。心理学的には、権威や伝統、社会的に価値のあると
> されているものを無批判に承認し、これに服従、依存し、融通が利かないパーソナリティを指す。
121デフォルトの名無しさん
2015/05/24(日) 15:11:00.39ID:9Q9ph3Hr オリジナルがえらいのではなくて
パクリ損ないでオリジナルより劣化してるのがクソ、
っていう単純な話だと思うのだが……
パクリ損ないでオリジナルより劣化してるのがクソ、
っていう単純な話だと思うのだが……
122デフォルトの名無しさん
2015/05/24(日) 18:48:24.27ID:hZNW9MV5123デフォルトの名無しさん
2015/05/24(日) 22:02:35.19ID:bCeKXRbu >>122
権威はどこにいったの?w
権威はどこにいったの?w
124デフォルトの名無しさん
2015/05/25(月) 17:36:12.90ID:2/V0nnt+ >>121
まさかここまで使われるとは思ってなかったんだろうな
まさかここまで使われるとは思ってなかったんだろうな
125デフォルトの名無しさん
2015/05/25(月) 18:03:08.64ID:MD5bLCSX >>116
ユーザが100万人ほどの言語を10日で作ってから言え
ユーザが100万人ほどの言語を10日で作ってから言え
126デフォルトの名無しさん
2015/05/25(月) 21:15:36.88ID:Pr0+1HdK >>125
権威主義万歳!
権威主義万歳!
127デフォルトの名無しさん
2015/05/25(月) 21:28:29.13ID:Pr0+1HdK 流石に初期JSの規模で大変とか言ってるのは
インタプリタの作り方もわからない初心者だけだよな?
クソ言語でも普及したPHPと違って言語そのものの需要で使われたわけでもなし
JSが普及したのはウェブブラウザが先進的だったから
そもそも本人も公開してるのに何マンセーしてんだかw
インタプリタの作り方もわからない初心者だけだよな?
クソ言語でも普及したPHPと違って言語そのものの需要で使われたわけでもなし
JSが普及したのはウェブブラウザが先進的だったから
そもそも本人も公開してるのに何マンセーしてんだかw
128デフォルトの名無しさん
2015/05/25(月) 21:29:17.23ID:Pr0+1HdK 公開 -> 後悔
129デフォルトの名無しさん
2015/05/26(火) 00:12:46.62ID:xYtlptqc130デフォルトの名無しさん
2015/05/26(火) 15:21:59.38ID:jJpgaPYe 学部レベルのインタプリタよりエロ動画サイト作る方が難しい
131デフォルトの名無しさん
2015/05/26(火) 18:58:13.73ID:CP1OCp5D JavaScriptライブラリのスレにも書いたのですが,過疎っていたのでこちらで質問させてください
openlayers3についてです
http://openlayers.org/en/v3.5.0/examples/kml-timezones.htmlをそのままコピーして
ローカルで実行したのですが,サンプルのようにTimezonesが表示されません(地図は表示されます)
kmlファイルはhttps://github.com/openlayers/ol3にあるdataフォルダをhtmlと同じ階層に設置しました
他のkmlファイルを読み込むサンプルも同様に動かないのですが何が原因でしょうか
openlayers3についてです
http://openlayers.org/en/v3.5.0/examples/kml-timezones.htmlをそのままコピーして
ローカルで実行したのですが,サンプルのようにTimezonesが表示されません(地図は表示されます)
kmlファイルはhttps://github.com/openlayers/ol3にあるdataフォルダをhtmlと同じ階層に設置しました
他のkmlファイルを読み込むサンプルも同様に動かないのですが何が原因でしょうか
132デフォルトの名無しさん
2015/05/27(水) 11:16:44.16ID:XkCb2CMh 馬鹿には無理
133デフォルトの名無しさん
2015/05/28(木) 07:16:02.03ID:4DphScwy >>132
だからあなたには答えられないんですね。なるほど。
だからあなたには答えられないんですね。なるほど。
134デフォルトの名無しさん
2015/05/28(木) 07:59:14.48ID:616UB9cr >>133←答えられない上にコードも書けないアホ
135デフォルトの名無しさん
2015/05/28(木) 13:22:35.68ID:E8n2j0BJ var vector = new ol.layer.Vector({
source: new ol.source.Vector({
url: 'timezones.kml',//url: 'data/kml/timezones.kml',
source: new ol.source.Vector({
url: 'timezones.kml',//url: 'data/kml/timezones.kml',
136デフォルトの名無しさん
2015/05/28(木) 17:23:07.74ID:4ci5OfPn137デフォルトの名無しさん
2015/05/28(木) 19:02:19.37ID:V96RG34r138デフォルトの名無しさん
2015/05/29(金) 07:06:31.36ID:hjMnAajE >>137
firefox以外はデフォルトではローカルファイルへのアスセスが制限されているからでは?
http://tmlife.net/programming/javascript/how-to-chrome-ajax.html
firefox以外はデフォルトではローカルファイルへのアスセスが制限されているからでは?
http://tmlife.net/programming/javascript/how-to-chrome-ajax.html
139デフォルトの名無しさん
2015/05/30(土) 07:45:51.67ID:xVK15s94 ローカルテストはサーバ立ててやるものだと思うが、fileスキームで実行してるのか
140デフォルトの名無しさん
2015/05/30(土) 08:33:00.97ID:Rpgfw2oh141デフォルトの名無しさん
2015/05/30(土) 10:26:22.21ID:3Gf/DalK 最近やたらめったらモジュールに切り分けてたら共通部分の重複が酷いことになってた
現在のスコープ内にimport,requireできれば便利なんだが
現在のスコープ内にimport,requireできれば便利なんだが
142デフォルトの名無しさん
2015/05/30(土) 12:21:21.30ID:skc6DNlZ 現時点でもやはりES3で書くべきですか?
ES5出てからもう何年も経ってるしObject.create()とか配列まわりの関数とか色々追加されてるのに使えないのが歯がゆいです。
ネット見てると結構ES5の機能使ってる人が多いですが、そういう方々はIE8とか切り捨ててるんですかね?
ES5出てからもう何年も経ってるしObject.create()とか配列まわりの関数とか色々追加されてるのに使えないのが歯がゆいです。
ネット見てると結構ES5の機能使ってる人が多いですが、そういう方々はIE8とか切り捨ててるんですかね?
143デフォルトの名無しさん
2015/05/30(土) 13:40:15.04ID:HkfQYaI5144デフォルトの名無しさん
2015/05/30(土) 13:41:11.94ID:HkfQYaI5 IE8 でもpolyfillで何とかなる場面が多いとは思いますが
145デフォルトの名無しさん
2015/05/30(土) 14:06:06.57ID:ebcCMrL3 >>142
lodash使ってる。なんとIE6以上から対応してる。
実装不可能なものを除いて、ES5で提供されている関数が提供されてる。
Object.create相当のメソッドもある。
https://lodash.com/docs#create
どうしてもES5だけでやりたいってわけじゃなく
ES5で提供された便利な関数を使いたいならlodashオススメ。
lodashにはES5よりも多くの機能が追加されてる。
lodash使ってる。なんとIE6以上から対応してる。
実装不可能なものを除いて、ES5で提供されている関数が提供されてる。
Object.create相当のメソッドもある。
https://lodash.com/docs#create
どうしてもES5だけでやりたいってわけじゃなく
ES5で提供された便利な関数を使いたいならlodashオススメ。
lodashにはES5よりも多くの機能が追加されてる。
146デフォルトの名無しさん
2015/05/31(日) 02:38:34.37ID:474JDHci147デフォルトの名無しさん
2015/05/31(日) 02:41:25.56ID:474JDHci でももうすぐES6が出るしキリが無いですね
ブラウザ対応状況とか考えるの諦めてlodashとかunderscoreとかそういうのに完全依存する方が正しいのかも
ブラウザ対応状況とか考えるの諦めてlodashとかunderscoreとかそういうのに完全依存する方が正しいのかも
148デフォルトの名無しさん
2015/05/31(日) 08:20:05.87ID:6IDXNIVy >>146-147
Object.create はES3の範囲内で完全実装は出来ない為、制限付きを理解した上で polyfill を書く必要がある
lodash は forEach 等で ES5 互換でないコードが見受けられるので ES 標準を目指すのであればお勧めしない
コードを読む限りでは 仕様に忠実なライブラリではなく、独自の世界を構築するタイプのようだから
Object.create はES3の範囲内で完全実装は出来ない為、制限付きを理解した上で polyfill を書く必要がある
lodash は forEach 等で ES5 互換でないコードが見受けられるので ES 標準を目指すのであればお勧めしない
コードを読む限りでは 仕様に忠実なライブラリではなく、独自の世界を構築するタイプのようだから
149デフォルトの名無しさん
2015/06/01(月) 15:26:03.49ID:dTiEpsP/ underscoreって可読性低下しない?
_から始まるってのがそもそも論外なんだけど…
知らない人間が見たら何だコリャ?ふざけてんのか?
これを考えた奴は保守性を考慮しないオナニー馬鹿なのか?って思うだろ。
_から始まるってのがそもそも論外なんだけど…
知らない人間が見たら何だコリャ?ふざけてんのか?
これを考えた奴は保守性を考慮しないオナニー馬鹿なのか?って思うだろ。
150デフォルトの名無しさん
2015/06/01(月) 16:19:05.72ID:fqMWxMza151デフォルトの名無しさん
2015/06/01(月) 16:49:15.47ID:4t8ilUI7 >>149
> 知らない人間が見たら何だコリャ?ふざけてんのか?
それを言い始めたら、$.hogeってなんだ?ってことにもなる。
>>150
> ま、普通使わない。
以外と使われてるよ?
http://www.infoq.com/jp/news/2015/04/lodash-utility-library
> JavaScriptユーティリティライブラリのlodashがバージョン3.5に達して,npmパッケージリポジトリの中で
> 最も多く参照されるライブラリになった。もはや代用品などではなく,信頼できる選択肢のひとつだ。
http://matsukaz.hatenablog.com/entry/2014/04/09/082410 に上げられてるようなよく使う機能は、
オレオレ実装されるより、既知のライブラリのメソッド使って欲しい。
> 知らない人間が見たら何だコリャ?ふざけてんのか?
それを言い始めたら、$.hogeってなんだ?ってことにもなる。
>>150
> ま、普通使わない。
以外と使われてるよ?
http://www.infoq.com/jp/news/2015/04/lodash-utility-library
> JavaScriptユーティリティライブラリのlodashがバージョン3.5に達して,npmパッケージリポジトリの中で
> 最も多く参照されるライブラリになった。もはや代用品などではなく,信頼できる選択肢のひとつだ。
http://matsukaz.hatenablog.com/entry/2014/04/09/082410 に上げられてるようなよく使う機能は、
オレオレ実装されるより、既知のライブラリのメソッド使って欲しい。
152デフォルトの名無しさん
2015/06/01(月) 17:05:38.13ID:dTiEpsP/ javascript使いってエンジニアとして未成熟なのか文系が多いのか、
保守性を考慮しないのばっかりだよな。
多言語では保守性において禁忌とされている事を平気でやる
先人が築きあげたバグを排除するコツのようなものをを完全に無視してる
たぶん将来はjavascriptの仕様が整理されて、
jQueryとかunderscoreみたいな非直観的で腐ったキーワードを使うライブラリは完全非推奨になる。
保守性を考慮しないのばっかりだよな。
多言語では保守性において禁忌とされている事を平気でやる
先人が築きあげたバグを排除するコツのようなものをを完全に無視してる
たぶん将来はjavascriptの仕様が整理されて、
jQueryとかunderscoreみたいな非直観的で腐ったキーワードを使うライブラリは完全非推奨になる。
153デフォルトの名無しさん
2015/06/01(月) 17:20:57.79ID:4t8ilUI7 Javaの人かな
154デフォルトの名無しさん
2015/06/01(月) 17:24:57.76ID:TGyjCQFp hagedo
155デフォルトの名無しさん
2015/06/01(月) 19:51:34.16ID:lFnhdSIE156デフォルトの名無しさん
2015/06/01(月) 19:59:11.62ID:9HWSCI34 >>152
こういう関数の部分の保守性とかどうでもいいよw
単純に自分実装のライブラリに入れ替えれば済む話なんだから。
それより問題なのはフレームワークだ。
馬鹿が使うとフレームワークにガッチリ組み込まれて
別のものに変えるのがすごく大変になる。
こういう関数の部分の保守性とかどうでもいいよw
単純に自分実装のライブラリに入れ替えれば済む話なんだから。
それより問題なのはフレームワークだ。
馬鹿が使うとフレームワークにガッチリ組み込まれて
別のものに変えるのがすごく大変になる。
157デフォルトの名無しさん
2015/06/01(月) 20:00:16.98ID:9HWSCI34 >>151
> > ま、普通使わない。
> 以外と使われてるよ?
だよな。Node関連では一番使われているライブラリだったはず。
何処かにデータが有ったはずなんだが。
好き嫌いは個人の好みとして、一番使われているという
事実を知らないとしたら、モグリだろうw
> > ま、普通使わない。
> 以外と使われてるよ?
だよな。Node関連では一番使われているライブラリだったはず。
何処かにデータが有ったはずなんだが。
好き嫌いは個人の好みとして、一番使われているという
事実を知らないとしたら、モグリだろうw
158デフォルトの名無しさん
2015/06/01(月) 20:02:41.82ID:9HWSCI34 あったあった。この記事だ。
lodash, あなたが既に使っているJavaScriptライブラリ
http://www.infoq.com/jp/news/2015/04/lodash-utility-library
JavaScriptユーティリティライブラリのlodashがバージョン3.5に達して,
npmパッケージリポジトリの中で最も多く参照されるライブラリになった。
もはや代用品などではなく,信頼できる選択肢のひとつだ。
何の根拠もない「使われてない」は無視していいよ。
だって、本人が無知だから、使われていることを「知らない」という
状態でも、自分の知ってる小さな経験だけから
使われてないって発言するだろうからさw
lodash, あなたが既に使っているJavaScriptライブラリ
http://www.infoq.com/jp/news/2015/04/lodash-utility-library
JavaScriptユーティリティライブラリのlodashがバージョン3.5に達して,
npmパッケージリポジトリの中で最も多く参照されるライブラリになった。
もはや代用品などではなく,信頼できる選択肢のひとつだ。
何の根拠もない「使われてない」は無視していいよ。
だって、本人が無知だから、使われていることを「知らない」という
状態でも、自分の知ってる小さな経験だけから
使われてないって発言するだろうからさw
159デフォルトの名無しさん
2015/06/01(月) 20:33:19.40ID:qMAgmJxR そんなことよりもNode.jsのREPLでアンダースコアが使えないのはどうすればいいの?
REPL単体で使うぶんには別の名前を使っても気にならないけど、.loadで読み込むファイルでアンダースコアが
使われていた場合は、ファイルを書き換えなければならず、かなり気持ちが悪い
こんな定番のライブラリで、Node.jsのことを考慮していない名前をデフォルトにするとも思えないから、
何か解決策はあると思うんだけど…
REPL単体で使うぶんには別の名前を使っても気にならないけど、.loadで読み込むファイルでアンダースコアが
使われていた場合は、ファイルを書き換えなければならず、かなり気持ちが悪い
こんな定番のライブラリで、Node.jsのことを考慮していない名前をデフォルトにするとも思えないから、
何か解決策はあると思うんだけど…
160デフォルトの名無しさん
2015/06/01(月) 20:42:18.22ID:e+Q3qVuq >>149
perlのデフォルト演算子($_)の名残だと思ってた
perlのデフォルト演算子($_)の名残だと思ってた
161デフォルトの名無しさん
2015/06/01(月) 20:49:28.66ID:9HWSCI34 >>159
グローバル変数とローカル変数の違いわかってる?
REPLで使うのはグローバル変数の_。
ローカル変数の_(lodash)が名前かぶっても
何の問題もないんだが。
名前かぶってわかりづらいというのなら、
var i だってずいぶん被ってるはずなんだが。
グローバル変数とローカル変数の違いわかってる?
REPLで使うのはグローバル変数の_。
ローカル変数の_(lodash)が名前かぶっても
何の問題もないんだが。
名前かぶってわかりづらいというのなら、
var i だってずいぶん被ってるはずなんだが。
162デフォルトの名無しさん
2015/06/01(月) 20:52:38.62ID:9HWSCI34163デフォルトの名無しさん
2015/06/01(月) 21:51:26.69ID:dTiEpsP/ >>162
_で始まるって言い方はおかしかったな。
C言語系の_は名前が続くから識別に問題ないが、_だけというのがクソだって話
これを初めて拝んだとき、_だけを変数名にするなんて一体このバカはどんな教育を受けているんだと思ったわ。
_で始まるって言い方はおかしかったな。
C言語系の_は名前が続くから識別に問題ないが、_だけというのがクソだって話
これを初めて拝んだとき、_だけを変数名にするなんて一体このバカはどんな教育を受けているんだと思ったわ。
164デフォルトの名無しさん
2015/06/01(月) 22:48:12.23ID:VQX8/s75165デフォルトの名無しさん
2015/06/01(月) 22:56:29.23ID:qMAgmJxR >>161
流石にそれくらいは分かってるけど、UnderscoreやLodashは普通グローバルに読み込むものじゃないの?
まさか関数ごとにrequireを書くわけでもあるまいし、少なくともvar iとは次元が違うものだと分かると思うんだけど…
流石にそれくらいは分かってるけど、UnderscoreやLodashは普通グローバルに読み込むものじゃないの?
まさか関数ごとにrequireを書くわけでもあるまいし、少なくともvar iとは次元が違うものだと分かると思うんだけど…
166デフォルトの名無しさん
2015/06/01(月) 22:59:26.58ID:VQX8/s75 lodash使うアプリでグローバルなんて聞いたことがない。
普通nodeでライブラリを使うときは、
ローカル変数に、略
いわんでもわかるだろ?
知ってるならなw
普通nodeでライブラリを使うときは、
ローカル変数に、略
いわんでもわかるだろ?
知ってるならなw
167デフォルトの名無しさん
2015/06/01(月) 23:00:05.05ID:VQX8/s75 訂正
lodash使うアプリでグローバルなんて聞いたことがない。
node使うアプリでグローバル変数なんて聞いたことがない。
lodash使うアプリでグローバルなんて聞いたことがない。
node使うアプリでグローバル変数なんて聞いたことがない。
168デフォルトの名無しさん
2015/06/01(月) 23:01:04.60ID:e+Q3qVuq CakePHPなんかの__()ならともかく、underscore.jsでGetTextの方の_を、
どうすれば連想できるのかわからない
どうすれば連想できるのかわからない
169デフォルトの名無しさん
2015/06/01(月) 23:01:38.04ID:dTiEpsP/ >>164
そんなどうでもいい知識はどうでもいい
そんなどうでもいい知識はどうでもいい
170デフォルトの名無しさん
2015/06/01(月) 23:03:51.00ID:dTiEpsP/ _を変数名にするのはゴミだってのは100人に聞いて99人が納得する話。
ほんとjQueryといい、javascriptのライブラリ作ってる奴は基地外だわ。
ほんとjQueryといい、javascriptのライブラリ作ってる奴は基地外だわ。
171デフォルトの名無しさん
2015/06/01(月) 23:06:02.95ID:qMAgmJxR >> 166,167
何が言いたいのか分からんのだけど、ファイルの頭で
var _ = require('lodash'); // またはunderscore
とするのは十分、一般的な使い方じゃないか?
適当に検索したサンプルコードでも、ファイルの頭でrequireをしているものがほとんどだし
何が言いたいのか分からんのだけど、ファイルの頭で
var _ = require('lodash'); // またはunderscore
とするのは十分、一般的な使い方じゃないか?
適当に検索したサンプルコードでも、ファイルの頭でrequireをしているものがほとんどだし
172デフォルトの名無しさん
2015/06/01(月) 23:08:20.48ID:e+Q3qVuq >>170
デフォルトに近い機能を誰もタイプしたくないから
デフォルトに近い機能を誰もタイプしたくないから
173デフォルトの名無しさん
2015/06/01(月) 23:08:27.29ID:VQX8/s75174デフォルトの名無しさん
2015/06/01(月) 23:12:31.08ID:qMAgmJxR175デフォルトの名無しさん
2015/06/01(月) 23:16:47.51ID:VQX8/s75176デフォルトの名無しさん
2015/06/01(月) 23:18:28.56ID:e+Q3qVuq >>174はqiitaのポストへの巧妙なステマ
177デフォルトの名無しさん
2015/06/01(月) 23:18:37.37ID:VQX8/s75 ヒント
普通はREPLでライブラリを読み込むときはrequireを使う。
普通はREPLでライブラリを読み込むときはrequireを使う。
178デフォルトの名無しさん
2015/06/01(月) 23:20:50.21ID:qMAgmJxR179デフォルトの名無しさん
2015/06/01(月) 23:20:51.76ID:e+Q3qVuq ttp://stackoverflow.com/questions/5691901/using-the-underscore-module-with-node-js
180デフォルトの名無しさん
2015/06/01(月) 23:21:19.02ID:dTiEpsP/ >>172
underscoreというものの存在を知ってる人間じゃないと、おふざけか本気なのか理解不能
知らない人でも直観的にわかるようにするべき。
_.なんていかにも意味ありげに書かれてたら、知らない人間はjavascriptに新しい構文でも出来たのかと勘違いする。
underscoreというものの存在を知ってる人間じゃないと、おふざけか本気なのか理解不能
知らない人でも直観的にわかるようにするべき。
_.なんていかにも意味ありげに書かれてたら、知らない人間はjavascriptに新しい構文でも出来たのかと勘違いする。
レスを投稿する
ニュース
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★5 [BFU★]
- 【野球】大谷翔平、佐々木朗希、山本由伸らがWBC辞退なら広がる不協和音… 『過去イチ盛り上がらない大会』になる可能性も★2 [冬月記者★]
- 【news23】小川彩佳アナ「ここまでの広がりになるということを、高市総理はどれだけ想像できていたんでしょうね」 日中問題特集で [冬月記者★]
- 【国際】ロシアはすでに戦争準備段階――ポーランド軍トップが警告 [ぐれ★]
- 「町中華」の“息切れ倒産”が増加 ブームにも支えられ職人技で踏ん張ってきたが… 大手チェーンは値上げでも絶好調 [ぐれ★]
- 毛寧(もう・ねい)報道官「中国に日本の水産品の市場は無い」 高市首相の国会答弁に「中国民衆の強い怒り」 ★2 [ぐれ★]
- 【高市売り】円安、止まらず!凄い勢いで暴落中。157円へ [219241683]
- 俺「お湯を流してと…」シンク「ボンッw」
- 【悲報】ヤフコメ民「中国が水産物を輸入禁止にするなら、日本国民向けに安く販売すればいい。中国依存から脱するべき」 [153736977]
- paypayで支払いするの便利すぎワロッタwwwwwwwwwwwwwww
- 山上徹也の妹なんでテロを肯定するようなこと言うんだい??
- もう寝ます
