私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.119 +
JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
>>351
目的と好みで複数のやり方の中から選ぶ
例えば、孫継承の prototype に対して、先祖 prototype の動的な書き換えを同時反映させるかどうかで
実装のやり方が変わってくる
[継承とプロトタイプチェーン]
http://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Inheritance_and_the_prototype_chain
もし jQuery から継承したいなら、jQuery オブジェクトはいろんなところで new されるから、
たぶん jQuery のコンストラクター自体を書き換えるとか、面倒なことになると思うよ
素直に jQuery で extend 使ったら?
目的と好みで複数のやり方の中から選ぶ
例えば、孫継承の prototype に対して、先祖 prototype の動的な書き換えを同時反映させるかどうかで
実装のやり方が変わってくる
[継承とプロトタイプチェーン]
http://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Inheritance_and_the_prototype_chain
もし jQuery から継承したいなら、jQuery オブジェクトはいろんなところで new されるから、
たぶん jQuery のコンストラクター自体を書き換えるとか、面倒なことになると思うよ
素直に jQuery で extend 使ったら?
非標準だからこそ一般的方法を探してるんですが?
プロトタイプチェーンはJSにとっては根幹的機能なのですから
本来は任意に設定出来る方法を標準で提供するべきなのです
しかし色々考えましたが
既に作られた関数オブジェクトのプロトタイプチェーンを
他の関数に繋ぎ変える方法はなさそうですね
プロトタイプチェーンはJSにとっては根幹的機能なのですから
本来は任意に設定出来る方法を標準で提供するべきなのです
しかし色々考えましたが
既に作られた関数オブジェクトのプロトタイプチェーンを
他の関数に繋ぎ変える方法はなさそうですね
javascriptで初めてOOPに触れた奴って、OOPの思想を理解してないからこういう理解になっちゃうんだろうなw
標準的な方法じゃなくてなぜか__proto__を必死に調べるのはなぜなんだぜ?
お前がいろいろ考えることなんて先人がやってるか見当違いのどちらかだ。
お前がいろいろ考えることなんて先人がやってるか見当違いのどちらかだ。
>>358
日本語読めない人ですか?
日本語読めない人ですか?
JavaScriptは普及率と入りやすさで一番と言ってもいい言語なんだから
もっと「JavaScriptで始めるオブジェクト指向プログラミング」みたいなページがあればいいんだが
もっと「JavaScriptで始めるオブジェクト指向プログラミング」みたいなページがあればいいんだが
一般的なOOPでクラスメソッドを継承出来ないのは無論分かってますよ?
プロトタイプ言語ならではのことを実現したいと考えただけです
技術者としての本能と言えるでしょう
プロトタイプ言語ならではのことを実現したいと考えただけです
技術者としての本能と言えるでしょう
D級プログラマは限られた仕様の中から最適解を選択することを知りません。
彼にとって自分が想像したことは必然であり、なくてはならないものと信じているからです。
彼にとって自分が想像したことは必然であり、なくてはならないものと信じているからです。
>>363
おまえ、ただの無能なんだな
http://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/proto
Warning: The __proto__ property is deprecated and should not be used. Object.getPrototypeOf should be used
instead of the __proto__ getter to determine the [[Prototype]] of an object. Mutating the [[Prototype]] of an object,
no matter how this is accomplished, is strongly discouraged, because it is very slow and unavoidably slows down
subsequent execution in modern JavaScript implementations. However, Object.setPrototypeOf is provided in ES6
as a very-slightly-preferred alternative to the __proto__ setter.
http://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf
Mutating the [[Prototype]] of an object, using either this method or the deprecated Object.prototype.__proto__, is
strongly discouraged, because it is very slow and unavoidably slows down subsequent execution in modern
JavaScript implementations.
Mutating the [[Prototype]] of an object is, by the nature of how modern JavaScript engines optimize property
accesses, a very slow operation. If you care at all about performance, you should never mutate the [[Prototype]]
of an object, either using this method or using Object.setPrototypeOf. Instead, create the object with the desired
[[Prototype]] using Object.create.
それでもやるなら勝手にどうぞ
おまえ、ただの無能なんだな
http://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/proto
Warning: The __proto__ property is deprecated and should not be used. Object.getPrototypeOf should be used
instead of the __proto__ getter to determine the [[Prototype]] of an object. Mutating the [[Prototype]] of an object,
no matter how this is accomplished, is strongly discouraged, because it is very slow and unavoidably slows down
subsequent execution in modern JavaScript implementations. However, Object.setPrototypeOf is provided in ES6
as a very-slightly-preferred alternative to the __proto__ setter.
http://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf
Mutating the [[Prototype]] of an object, using either this method or the deprecated Object.prototype.__proto__, is
strongly discouraged, because it is very slow and unavoidably slows down subsequent execution in modern
JavaScript implementations.
Mutating the [[Prototype]] of an object is, by the nature of how modern JavaScript engines optimize property
accesses, a very slow operation. If you care at all about performance, you should never mutate the [[Prototype]]
of an object, either using this method or using Object.setPrototypeOf. Instead, create the object with the desired
[[Prototype]] using Object.create.
それでもやるなら勝手にどうぞ
>>365
なぜそれをコピーしたんですか??
なぜそれをコピーしたんですか??
JSは発展途上の言語なのでA級以上の技術者にとっては隔靴掻痒なところが結構ありますね
ES6が使えたらいいのですが、実際にはES5どころかES3で組まないといけないという悲しみ
ES6が使えたらいいのですが、実際にはES5どころかES3で組まないといけないという悲しみ
>>367
D級プログラマは理解力も低いようですね。
D級プログラマは理解力も低いようですね。
>>363
ES6のclass構文を使って継承すればコンストラクタ間もプロトタイプチェーンされる(はず)
class構文が使えるようになるまでは__proto__かObject.setPrototypeOfを使うしかないね
それかCoffeeScriptみたいにプロパティのコピーで妥協するか
ES6のclass構文を使って継承すればコンストラクタ間もプロトタイプチェーンされる(はず)
class構文が使えるようになるまでは__proto__かObject.setPrototypeOfを使うしかないね
それかCoffeeScriptみたいにプロパティのコピーで妥協するか
>>371
ありがとうございます
class構文ではコンストラクタ間もチェーンされるとのことですが、本当でしょうか?
自分がやろうとしていることは、結構実験的なことだという自覚はありますので
標準の構文では出来なくても仕方ないと思っていますし
そこまではまだ期待できないかなーと。
ただ「する手段がない」という現状には困りますが・・
ありがとうございます
class構文ではコンストラクタ間もチェーンされるとのことですが、本当でしょうか?
自分がやろうとしていることは、結構実験的なことだという自覚はありますので
標準の構文では出来なくても仕方ないと思っていますし
そこまではまだ期待できないかなーと。
ただ「する手段がない」という現状には困りますが・・
>>370
馬鹿な人は理解できなくて大変ですね
馬鹿な人は理解できなくて大変ですね
http://stackoverflow.com/questions/351409/appending-to-array
この質問おかしくないですか?
配列に要素を追加するだけの質問に対して
pushと答えた回答に
イイネ的なものが1000以上付いています
何故ですか?
この質問おかしくないですか?
配列に要素を追加するだけの質問に対して
pushと答えた回答に
イイネ的なものが1000以上付いています
何故ですか?
質問です。
ここを参考に簡単な計算フォームを作りました。
http://www.tagindex.com/javascript/form/comp2b.html
計算結果がinputに表示されるのですが、
これをスロット形式で豪華に表現したいと思ってます。
どなたか参考サイトを知りませんか?
理想としてはこんな感じです。
http://github.hubspot.com/odometer/docs/welcome/
よろしくお願いします。
ここを参考に簡単な計算フォームを作りました。
http://www.tagindex.com/javascript/form/comp2b.html
計算結果がinputに表示されるのですが、
これをスロット形式で豪華に表現したいと思ってます。
どなたか参考サイトを知りませんか?
理想としてはこんな感じです。
http://github.hubspot.com/odometer/docs/welcome/
よろしくお願いします。
>>376
push以外の回答なんて思い付かないけど何が言いたいの?
push以外の回答なんて思い付かないけど何が言いたいの?
arr.reverse();
arr.unshift();
arr.reverse();
ぱっと思いついたコードこれだけど、そっかpush()なんてあるのか、ためになるなぁ。ポチッとな
arr.unshift();
arr.reverse();
ぱっと思いついたコードこれだけど、そっかpush()なんてあるのか、ためになるなぁ。ポチッとな
(function(global){
global.Date = null;
global.Date = function(){};
global.Date = global.__proto__.Date;
console.log(new global.Date());
}(window));
これでDateが復活しないのはなぜですか?
global.Date = null;
global.Date = function(){};
global.Date = global.__proto__.Date;
console.log(new global.Date());
}(window));
これでDateが復活しないのはなぜですか?
>>386
__proto__野郎はまだ勘違いしてるな…__proto__をいじる必要なんて全くないと言ってるのに
復活しないのは単に global.__proto__.Date が undefined だから
__proto__野郎はまだ勘違いしてるな…__proto__をいじる必要なんて全くないと言ってるのに
復活しないのは単に global.__proto__.Date が undefined だから
console.log = null;
console.log = console.__proto__.log;
ってやると復活します
どうしたらDateを復活させることができますか?
console.log = console.__proto__.log;
ってやると復活します
どうしたらDateを復活させることができますか?
>>389
今回はわたしが質問しているんで、逆に質問があるのならレスではなく新規に書き込んでいただけますか?
今回はわたしが質問しているんで、逆に質問があるのならレスではなく新規に書き込んでいただけますか?
難しいことは知りませんぐぐったらこうやったら復活するってでてきました
とにかくDateを復活さえ出来ればいいんです
とにかくDateを復活さえ出来ればいいんです
>>391
できんね
__proto__ってのは、そのオブジェクトのコンストラクタのprototypeプロパティの参照じゃ
んでchromeだとconsoleのコンストラクタにはConsoleってのが定義されてて
そいつがlogをメソッドとして定義してる
んが、windowのコンストラクタのWindowはDateなんて持ってない
できんね
__proto__ってのは、そのオブジェクトのコンストラクタのprototypeプロパティの参照じゃ
んでchromeだとconsoleのコンストラクタにはConsoleってのが定義されてて
そいつがlogをメソッドとして定義してる
んが、windowのコンストラクタのWindowはDateなんて持ってない
まじすか
alertは復活できたのにDateだけ出来ないとか許せません
alertは復活できたのにDateだけ出来ないとか許せません
console.log = null;
ってのは、consoleオブジェクトのlogっていうプロパティを殺しただけ
global.Date = null;
ってのは、Date自体がコンストラクタなのにそれを消してしまってる
どうしてもそうする必要があるのなら
どこかにまるっとコピーしておく必要がある
ってのは、consoleオブジェクトのlogっていうプロパティを殺しただけ
global.Date = null;
ってのは、Date自体がコンストラクタなのにそれを消してしまってる
どうしてもそうする必要があるのなら
どこかにまるっとコピーしておく必要がある
>>390
仕様から使えるオブジェクトを判断しろ、といいたいところだけど、仕様を読めない人にはわからないだろうね
仕様から使えるオブジェクトを判断しろ、といいたいところだけど、仕様を読めない人にはわからないだろうね
>>395
文字通りASCIIなら前者だけど、制御文字とか抜いて考えたいとか
実現したいことによって正規表現は変わるね
http://ja.wikipedia.org/wiki/ASCII
を見てみるとよいと思う
文字通りASCIIなら前者だけど、制御文字とか抜いて考えたいとか
実現したいことによって正規表現は変わるね
http://ja.wikipedia.org/wiki/ASCII
を見てみるとよいと思う
<script>が増えてきた時って、どのように共通化しているんですか?
javaを使えば簡単に共通化することは出来ますが、今回はrest(json)を使ってみようかと思っています。
なので、できればサーバサイドのロジックで共通化はしたくないです。
javaを使えば簡単に共通化することは出来ますが、今回はrest(json)を使ってみようかと思っています。
なので、できればサーバサイドのロジックで共通化はしたくないです。
>>398
RequireJSもしくはそれ相当のものを使う。
分かりやすく言えばJavaのimportとかinclude的なことができる。
開発時はメンテナンス性を考えて小さなjsファイルに分割。
HTMLにはRequreJS読み込みコードのみ。
あとはRequreJSがjsファイルに書かれた依存関係情報を元に
jsファイルを読み込んでくれる。
リリース時はそれらの小さなjsファイルを1つないし
少数のファイルに結合
RequireJSもしくはそれ相当のものを使う。
分かりやすく言えばJavaのimportとかinclude的なことができる。
開発時はメンテナンス性を考えて小さなjsファイルに分割。
HTMLにはRequreJS読み込みコードのみ。
あとはRequreJSがjsファイルに書かれた依存関係情報を元に
jsファイルを読み込んでくれる。
リリース時はそれらの小さなjsファイルを1つないし
少数のファイルに結合
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/1/25 12:46
- + JavaScript の質問用スレッド vol.110 + (1001) - [97%] - 2013/10/13 14:01
- + JavaScript の質問用スレッド vol.129 + (926) - [97%] - 2017/7/27 13:45
- + JavaScript の質問用スレッド vol.129 + (981) - [97%] - 2016/5/5 8:16
- + JavaScript の質問用スレッド vol.118 + (1002) - [97%] - 2014/8/29 22:30
- + JavaScript の質問用スレッド vol.117 + (1009) - [97%] - 2014/8/5 3:30
- + JavaScript の質問用スレッド vol.116 + (1002) - [97%] - 2014/7/1 0:45
- + JavaScript の質問用スレッド vol.115 + (1001) - [97%] - 2014/5/29 16:16
- + JavaScript の質問用スレッド vol.114 + (1001) - [97%] - 2014/5/3 10:45
- + JavaScript の質問用スレッド vol.112 + (1001) - [97%] - 2013/11/27 16:46
- + JavaScript の質問用スレッド vol.111 + (1001) - [97%] - 2013/11/4 6:00
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/3/15 21:30
- + JavaScript の質問用スレッド vol.139 + (1001) - [97%] - 2019/5/27 15:15
- + JavaScript の質問用スレッド vol.109 + (1001) - [97%] - 2013/10/7 13:16
- + JavaScript の質問用スレッド vol.121 + (1001) - [95%] - 2015/1/1 18:30
- + JavaScript の質問用スレッド vol.125 + (1001) - [95%] - 2015/10/7 17:45
- + JavaScript の質問用スレッド vol.124 + (1001) - [95%] - 2015/7/16 1:30
トップメニューへ / →のくす牧場書庫について