私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.119 +
JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
まあた質問スレで質問・回答ではない言い合いが始まったよこのバカ達
スレチな話はやめろ
スレチな話はやめろ
typeofを使ったundefinedチェックはもう過去のものなんですね。
でも、内部的にnewしてるとしても、それはnewだけでは出来なかったことをやっているってことでしょ?
忌避する理由としては弱いのでは
忌避する理由としては弱いのでは
そういや未定義の話が出たけど、
未定義のチェックってどうしてる?
ブラウザで動かすならこれが一番シンプルだと思う。
console.log('JSON' in window);
未定義のチェックってどうしてる?
ブラウザで動かすならこれが一番シンプルだと思う。
console.log('JSON' in window);
かつてはnewしかなかったんだから過渡期にnewと名づけられた関数が使われていたとしても
Object.createの方が原現象に近いんだからnewをしているとはならんのよ
このあたりA級以上じゃないと分からないかなぁ~
Object.createの方が原現象に近いんだからnewをしているとはならんのよ
このあたりA級以上じゃないと分からないかなぁ~
>>906
厳密に調べたい場合はそれかな。
厳密にっていうのは定義されていてundefinedが代入されていても
定義されているとみなしたい場合。
でもJSONオブジェクトみたいなものは、
if (window.JSON) {} でいいと思う。
厳密に調べたい場合はそれかな。
厳密にっていうのは定義されていてundefinedが代入されていても
定義されているとみなしたい場合。
でもJSONオブジェクトみたいなものは、
if (window.JSON) {} でいいと思う。
>>908
それだと何のオブジェクトか分からないから
typeof JSON.parse==="function"&&typeof JSON.stringify==="function"も追加しないと
それだと何のオブジェクトか分からないから
typeof JSON.parse==="function"&&typeof JSON.stringify==="function"も追加しないと
またundefinedの話してるのかw
確か前回の話はこれで止まったと思うんだが。
=== undefinedの何が駄目か?
それはundefinedになんかの値が入っていた時に困る。
だったら、
(function() {
var undefined;
・・・
})();
って書けばいいんじゃね?
どうせグローバル汚さないようにfunctionで括るんだし。
という流れで、typeof厨は消えたと思うんだけどな。
少なくとも反論のレスはなかった。
確か前回の話はこれで止まったと思うんだが。
=== undefinedの何が駄目か?
それはundefinedになんかの値が入っていた時に困る。
だったら、
(function() {
var undefined;
・・・
})();
って書けばいいんじゃね?
どうせグローバル汚さないようにfunctionで括るんだし。
という流れで、typeof厨は消えたと思うんだけどな。
少なくとも反論のレスはなかった。
>>911
JSON が Object じゃない時ってどんな時さ
JSON が Object じゃない時ってどんな時さ
>>913
反論は散々出たが、相手するのが馬鹿らしくなって相手にされなかっただけ
反論は散々出たが、相手するのが馬鹿らしくなって相手にされなかっただけ
>>913
それはかなり前の話だろ
それはかなり前の話だろ
>>913
グローバル変数探索のコスト軽減のためにするんならわかるが、そんな変な理由でやるんかい
グローバル変数探索のコスト軽減のためにするんならわかるが、そんな変な理由でやるんかい
>>913
書き換え禁止の実装でも書き換え可能にするとかどこの馬鹿だよ
書き換え禁止の実装でも書き換え可能にするとかどこの馬鹿だよ
そもそも undefined 判定なんか使わないな
undefine をセットしたり、比較するコードは改善の余地がある
undefine をセットしたり、比較するコードは改善の余地がある
自己完結してるなら同意を求めずに黙ってろよ
誰もお前がそう思うことは止めないから
誰もお前がそう思うことは止めないから
もはや何を言い争ってるのか分からんなw
はっきり言えるのはtypeof原理主義みたいな奴は馬鹿ということだけだ
はっきり言えるのはtypeof原理主義みたいな奴は馬鹿ということだけだ
A級の人と底辺が言い争ってますね
A級以外の底辺はレスしないでください。スレ汚しです。
A級以外の底辺はレスしないでください。スレ汚しです。
「未定義の場合にtypeofでチェックするとエラーにならない」
これデメリットだよね
これデメリットだよね
未定義の場合にtypeofでチェックするとエラーにならない
という問題をどう解決するか。
typeofを使わないのが答えだろう。
という問題をどう解決するか。
typeofを使わないのが答えだろう。
そんな下らんことにウジウジ拘るのは底辺の証だわ
底辺はあたま使わずにただ規約に従ってればいいんだよ
底辺はあたま使わずにただ規約に従ってればいいんだよ
本当に>>913でレスが止まったなw
same origin policyが防ぐ脅威についての質問です
もしこれがないとクッキーが盗まれて
gmailやtwitterに勝手にログインされる可能性があると
本に書いているのですが、
クッキーを受け取るには、
gmailやtwitterのサイトで任意のJavaScriptを実行する必要があると思います
しかし、この任意のJavaScriptを実行するということは通常できないのではないですか?
どこか勘違いしてますか?
もしこれがないとクッキーが盗まれて
gmailやtwitterに勝手にログインされる可能性があると
本に書いているのですが、
クッキーを受け取るには、
gmailやtwitterのサイトで任意のJavaScriptを実行する必要があると思います
しかし、この任意のJavaScriptを実行するということは通常できないのではないですか?
どこか勘違いしてますか?
そもそもnewがダサくなかったらObject.createなんて作られないから。
いつまでもダサコード書いとけよイモグラマーが
いつまでもダサコード書いとけよイモグラマーが
Object.createとnewとどっちが本質的か考えたらすぐ分かるだろ
createはプロトタイプチェーン伸張
newはプロトタイプチェーン伸張+コンストラクタ呼び出し
つまりObject.createの方がより本質的なんだよ
こんなの簡単なことだろ
センスねー野郎だな
createはプロトタイプチェーン伸張
newはプロトタイプチェーン伸張+コンストラクタ呼び出し
つまりObject.createの方がより本質的なんだよ
こんなの簡単なことだろ
センスねー野郎だな
>>939の件ですが、
別タブで他のサイトにログインしている最中
JSからajaxでそのサイトを取得すると、
もしSOPがないとログイン状態のクッキーが送信されて取得できてしまう、
とのことでした。
クッキーはウインドウごとに持っていて、
あるタブでログインしても、別タブを開いたらログインしなおさなければいけないと思っていたのですが、
クッキーはウインドウ毎ではないのですね
別タブで他のサイトにログインしている最中
JSからajaxでそのサイトを取得すると、
もしSOPがないとログイン状態のクッキーが送信されて取得できてしまう、
とのことでした。
クッキーはウインドウごとに持っていて、
あるタブでログインしても、別タブを開いたらログインしなおさなければいけないと思っていたのですが、
クッキーはウインドウ毎ではないのですね
同時に同じURLを二つのウインドウを開いた時
ウインドウ1でクッキーに書いた内容は
すぐに(リロードせずに)ウインドウ2のクッキーに反映するのでしょうか?
ウインドウ1でクッキーに書いた内容は
すぐに(リロードせずに)ウインドウ2のクッキーに反映するのでしょうか?
以下のJavaScriptコードでiframeの高さを中身のページのサイズに仕様としているのですが、
selectObj[i].document.getElementsByTagName("body")[0].scrollHeightがうまくいかず、
「{exception} 未定義または NULL 参照のプロパティ 'getElementsByTagName' は取得できません」と言われてしまいます。
ページにはiframeが2つ設置してあり、今後2つのうち中身の高さが高い方にそろえたいと思っているのですが、
それぞれの高さを取得するにはどうしたらよいのでしょうか?
selectObj[i].document.getElementsByTagName("body")[0].scrollHeightのselectObj[i]部分を
iframeに設定しているnameにすれば高さの取得はうまくいくのですが、
それでは凡庸性がないと思いまして。
document.getElementsByName(selectObj[i].name)などを試してみましたが、
同じようなことを言われました。
function resize() {
var selectObj = document.getElementsByTagName('iframe');
for(i=0; i < selectObj.length; i++){
selectObj[i].height=selectObj[i].document.getElementsByTagName("body")[0].scrollHeight+30;
}
}
selectObj[i].document.getElementsByTagName("body")[0].scrollHeightがうまくいかず、
「{exception} 未定義または NULL 参照のプロパティ 'getElementsByTagName' は取得できません」と言われてしまいます。
ページにはiframeが2つ設置してあり、今後2つのうち中身の高さが高い方にそろえたいと思っているのですが、
それぞれの高さを取得するにはどうしたらよいのでしょうか?
selectObj[i].document.getElementsByTagName("body")[0].scrollHeightのselectObj[i]部分を
iframeに設定しているnameにすれば高さの取得はうまくいくのですが、
それでは凡庸性がないと思いまして。
document.getElementsByName(selectObj[i].name)などを試してみましたが、
同じようなことを言われました。
function resize() {
var selectObj = document.getElementsByTagName('iframe');
for(i=0; i < selectObj.length; i++){
selectObj[i].height=selectObj[i].document.getElementsByTagName("body")[0].scrollHeight+30;
}
}
>>945
getElementsByTagName('iframe')
で取得した selectObj が Window オブジェクトのリストになると
勘違いをしているようだが
あくまで HTMLElement オブジェクトのリスト
iframe から その内容Documentにアクセスする方法は
HTMLIFrameElement API を調べればよい
http://html.spec.whatwg.org/multipage/embedded-content.html#the-iframe-element
getElementsByTagName('iframe')
で取得した selectObj が Window オブジェクトのリストになると
勘違いをしているようだが
あくまで HTMLElement オブジェクトのリスト
iframe から その内容Documentにアクセスする方法は
HTMLIFrameElement API を調べればよい
http://html.spec.whatwg.org/multipage/embedded-content.html#the-iframe-element
new を使わずに Object.create を使うメリットって何でしょうか?
MDNを見ても分からなかったですorz
MDNを見ても分からなかったですorz
ここでデカい口叩いてる奴等って仕様も知らずに感情だけでもの言ってんだよな
プログラム版とかでは仕様の○○項を見ろとか平気で言ってくるやつも多い
コードで例示するか仕様の項目を指摘するか以外の書き込みは、全く信用すべきでないよ
プログラム版とかでは仕様の○○項を見ろとか平気で言ってくるやつも多い
コードで例示するか仕様の項目を指摘するか以外の書き込みは、全く信用すべきでないよ
一昔前にnew使うな派みたいなのがいたけど、今さらそういうこと言ってる奴いるのかね
>>947
概ねはオブジェクト初期化子を使用してインスタンス(のようなもの)を生成できる、という設計上の違いしかないよ。
ただ、Object.create はコンストラクタ呼び出しされないからnew演算子の完全な代替にはならない(これも設計思想の違いといえなくはない)。
Object.create は new 演算子を忌避した Douglas Crockford が作成したコードで、後に ES5 で取り込まれた経緯がある。
彼の拘りは独特で new 演算子のほぼ全否定に近く、個人的にはやりすぎ感があるけど、まあ彼の思想に共感した人もそれなりにいる(個人的には部分的には肯定するけど全肯定は無理だった)。
彼は『JavaScript: The Good Parts』のP26で「JavaScriptが用意したメカニズムは複雑で扱いづらいが、これはかなり簡素化することもできる」という説明から Object.create を紹介している。
彼の感覚では Object.create の方が簡素でわかりやすいという事だね。
はっきりいって個人の感覚と設計思想の違いによるものだから自分の思想に合う方を選択すれば良い。
上の方で繰り広げられている「本質」に纏わる論争は個人間の思想の違いよる宗教戦争だから気にしなくていい。
概ねはオブジェクト初期化子を使用してインスタンス(のようなもの)を生成できる、という設計上の違いしかないよ。
ただ、Object.create はコンストラクタ呼び出しされないからnew演算子の完全な代替にはならない(これも設計思想の違いといえなくはない)。
Object.create は new 演算子を忌避した Douglas Crockford が作成したコードで、後に ES5 で取り込まれた経緯がある。
彼の拘りは独特で new 演算子のほぼ全否定に近く、個人的にはやりすぎ感があるけど、まあ彼の思想に共感した人もそれなりにいる(個人的には部分的には肯定するけど全肯定は無理だった)。
彼は『JavaScript: The Good Parts』のP26で「JavaScriptが用意したメカニズムは複雑で扱いづらいが、これはかなり簡素化することもできる」という説明から Object.create を紹介している。
彼の感覚では Object.create の方が簡素でわかりやすいという事だね。
はっきりいって個人の感覚と設計思想の違いによるものだから自分の思想に合う方を選択すれば良い。
上の方で繰り広げられている「本質」に纏わる論争は個人間の思想の違いよる宗教戦争だから気にしなくていい。
前へ 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
トップメニューへ / →のくす牧場書庫について