タグ

javascriptに関するockeghemのブックマーク (162)

  • yebo blog: JavaScriptの実装はLispで書かれていた

    2011/11/27 JavaScriptの実装はLispで書かれていた JavaScriptは、1995年に当時のネットスケープ・コミュニケーションズのブレンダン・アイクによって開発され、Netscape Navigator 2.0で実装されたと知られている(最初はLiveScriptと呼ばれていた)。HackerNewsに、JavaScriptの最初の実装(動作)がLispで書かれていたとあった。このコードはWaldemar Horwat氏寄贈になっている。彼は、1997年にアイクからJavaScriptの開発を引き継いでおり、EMCAScriptの標準化に尽力している(現在はGoogle)。このLispコードは、JavaScript 2.0 (ECMAScript 4)あるいはEpimetheusとして知られる実装なのかな。Brendan Eich | Popularitymodes

    ockeghem
    ockeghem 2011/11/27
    『HackerNewsに、JavaScriptの最初の実装(動作)がLispで書かれていたとあった』<そっ、そうだったのか
  • 9/5(月)のmemo - F&R:ITmemo

    jQueryについて text()メソッド - エスケープされる。 jQuery.get( url, data, callback ) - HTTP(GET)通信でページを読み込み get() - DOMエレメントの配列にアクセス html() - 最初の要素をHTML文字列で返す。組み込みであるinnerHTMLの値と同じ。 empty() - 各要素の子要素を全て削除し、空にする。 同時にイベントハンドラや内部でキャッシュしているデータも削除する。 PHPについて eval — 文字列を PHP コードとして評価する XSSについて XSSに関して split関数で\タグで分けるのがいいみたい。 splitー指定した区切り文字で分割し、その結果を配列として返す 格納する配列名=文字列.split(区切文字) 通常のWebアプリケーションの場合、 HTMLで表示するパラメータのエスケープ

    9/5(月)のmemo - F&R:ITmemo
    ockeghem
    ockeghem 2011/09/06
    『split関数でタグで分けるのがいいみたい』<誤解を与えたようで申し訳ないのですが、タグで分けるのは一般的な方法ではありません
  • 彼氏が(function(){...})()を即時関数って言ってた。別れたい。 - このブログは証明できない。

    JavaScriptの(function(){...})()について、初心者向けの記事があがってました。いい記事ですね。長いけど、いい記事ですね。でも、(function(){...})()を即時関数と呼ぶのに違和感があります。あ。違和感しかありません。 知ってて当然?初級者のためのJavaScriptで使う即時関数(function(){...})()の全て - 三等兵 記事から引用。これですね。 (function($){ $.hoge = function() { }; })(jQuery) (function(){...})()が、「JavaScriptパターン ―優れたアプリケーションのための作法」というで「即時関数」と名付けられてるらしいです。えー。これ、関数じゃないですよね。(function(){...})という無名関数を()でコールしてる処理に見えます。 動詞を名詞とし

    彼氏が(function(){...})()を即時関数って言ってた。別れたい。 - このブログは証明できない。
    ockeghem
    ockeghem 2011/08/25
    無名関数=関数リテラル≒関数の即値≠即時関数 という流れ?と妄想したけど違うみたいだ(^o^)/
  • yebo blog: JavaScriptによるSmalltalkの実装

    2011/08/22 JavaScriptによるSmalltalkの実装 JavaScriptでSmalltalkを実装してしまった人がいる[hackernews]。Jtalkは、JavaScriptランタイム上で動作するSmalltalkの処理系で、クラスブラウザやワークスペース(Smalltalkの式を実行できる)などのIDEも含んでいるためブラウザ上でWebアプリケーションのクライアントサイドを開発することができるというもの。他にもClamatoという実装もあるが、ClamatoはSmalltalkとは異なる独自の方言だが、JtalkはPharo Smalltalk互換とのこと。そして、Jtalk自身で記述されたコンパイラで効率的なJavaScriptコードを生成できる。 メールで送信 BlogThis! Twitter で共有する Facebook で共有する Google バズで

    ockeghem
    ockeghem 2011/08/22
    『Jtalkは、JavaScriptランタイム上で動作するSmalltalkの処理系…Jtalk自身で記述されたコンパイラで効率的なJavaScriptコードを生成できる』<これはすごい
  • 私はいかにしてソフトバンク端末60機種のJavaScriptを検証したか - ockeghem's blog

    昨日のソフトバンクの非公式JavaScript対応の調査結果 | 徳丸浩の日記で報告したように、昨年5月に、ソフトバンク60機種の検証を行い、JavaScript対応の状況などを調査しました。当時はまだ公式なJavaScript対応機種はない状態でしたが、既にほとんどの端末が *非公式に* JavaScriptに対応していました。 このエントリでは、検証の様子を報告します。 なぜJavaScript対応状況を調査したか http://www.hash-c.co.jp/info/20091124.htmlを公表した前後に、とある方(この方)から、ソフトバンクのケータイでもJavaScriptが動作すると伺いました(参考のやりとり)。XMLHttpRequestも含めてJavaScrptが動くと教えていただいた932SHを私も購入して調べたところ、以下が判明しました。 確かにJavaScrip

    私はいかにしてソフトバンク端末60機種のJavaScriptを検証したか - ockeghem's blog
  • ソフトバンクの非公式JavaScript対応の調査結果

    ソフトバンクのYahoo!ケータイブラウザは、2010年春モデルまで非公式のJavaScript対応機種がありました。2010年5月に、私的にその対応状況を調査した結果を公表します。 これは、「Yahoo!ケータイの一部端末に「かんたんログイン」なりすましを許す問題」を公表するにあたり、影響のある端末を調べるために、端末実機の検証センターにて抜き取り検査した結果です。 考察JavaScriptが最初に搭載されたのは、2004冬の702NKらしい。以降、ノキア端末にはJavaScriptが搭載される。この時期のJavaScriptは簡易的なもの。 2006年冬モデルから多くのモデルでJavaScriptが搭載される。この時期の端末は、DOMは対応しているが、XMLHttpRequestは対応していない。 2008年春モデルから一部の機種でXMLHttpRequestをサポートする。 シャープ

  • 【モバゲー】JAVAScriptを無効に設定 - Softbankの830CAを使っています。モバゲーをやっているのです... - Yahoo!知恵袋

    【モバゲー】JAVAScriptを無効に設定 Softbankの830CAを使っています。 モバゲーをやっているのですが、今日唐突にページを開いても次のようなページに強制的に飛ぶようになりました。 「ご利用の携帯電話で今後モバゲータウンをご利用いただく場合は[JAVAScriptを無効に設定]いただくようお願いしております」 ...? 言っている意味がさっぱり理解できません。 どうしたら無効にできるのでしょうか? 回答待ってます。

    【モバゲー】JAVAScriptを無効に設定 - Softbankの830CAを使っています。モバゲーをやっているのです... - Yahoo!知恵袋
    ockeghem
    ockeghem 2011/06/26
    先のブクマのきっかけはこれ。知恵袋というくらいで、知恵の宝庫ですね。色々教えてもらっていますw
  • ockeghemのtumblr, ソフトバンクの821Nでモバゲーにアクセスしたところ

    ockeghem
    ockeghem 2011/06/26
    ついさっき気づきました。とてもよいことだと思うけど、教えてもらえるとありがたかった
  • DOM APIとinnerHTMLは等価ではない

    最近、徳丸をじわじわ読んでいるのですが、DOM based XSSの話が書いてあったので、少し言及しておこうと思います。 徳丸から引用 DOM based XSSと呼ばれるXSSがあります。これは、JavaScriptによりクライアント側で表示処理する箇所があり、そこに脆弱性がある場合のXSSです。 サンプル書いてみました。 <script> document.write(unescape(location.href)); </script> こいつを適当なファイル名で保存して、domxss.html#<script>alert("hello")<script>などのURLでアクセスするとalertが表示されるはずです。任意のスクリプトが実行可能な状態ってことですね。任意のスクリプトが実行可能ってことは、セッションクッキー盗み放題で、他人に成り済まして買い物できちゃったりするレベルです

    DOM APIとinnerHTMLは等価ではない
    ockeghem
    ockeghem 2011/06/05
    #wasbook に言及いただきありがとうございます。『JavaScriptにだってXSSを作り込む可能性がある。DOM based XSSはもう少し周知されるべき』<本当にそうですね
  • サンドボックス (セキュリティ) - Wikipedia

    この記事には独自研究が含まれているおそれがあります。 問題箇所を検証し出典を追加して、記事の改善にご協力ください。議論はノートを参照してください。(2011年4月) コンピュータセキュリティ技術において、サンドボックス (sandbox) は、外部から受け取ったプログラムを保護された領域で動作させることによって、システムが不正に操作されるのを防ぐセキュリティ機構のことをいう[1]。 実行されるプログラムは保護された領域に入り、ほかのプログラムやデータなどを操作できない状態にされて動作するため、プログラムが暴走したりウイルスを動作させようとしてもシステムに影響が及ばないようになっている。 ウェブページに配置されたJavaアプレットやFlash、JavaScriptなどのプログラムは自動的に実行される。そのため、気づかないうちにコンピュータ上にあるファイルを盗み見られたり書き換えられたり、ある

    ockeghem
    ockeghem 2010/12/24
    『JavaScriptを使っていると誰も見てくれなくなる…それはJavaScriptを提供する側の望むところではない。このため、サンドボックスによる保護は強化される一方である』<なんじゃこりゃ
  • http://homepage.mac.com/yuji_okamura/iSawIt/archives/2010/01/entry_2448.html

  • JSON U+2028, U+2029 問題回避方法

    Unicode の文字 U+2028 (Line Separator) および U+2029 (Paragraph Separator) が含まれる JSON コードを解釈して JavaScript オブジェクトに変換しようとするとエラーになる問題の回避方法を示し、その問題の発生状況と回避方法の効果を実証する。更に当ページをさまざまなブラウザで参照することで発生する/しないの判定も行う。 この問題を回避するには幾つかの方法がある。それを検討してみる。 問題が発生しないブラウザを使用する。 デベロッパーにとっては最も楽な回避方法である。しかし企業のイントラネットなどでブラウザを固定することができない限りこの選択肢を採用できないだろう。更にたとえ企業のイントラネットであったとしてもサポート対象のブラウザで問題が発生しているからこのページを参照しているのだと思われる。 主要ブラウザの中で問題が発

  • U+2028 と U+2029 が JSON データに含まれていると JavaScript の eval でエラーになる

    Unicode の文字 U+2028 と U+2029 が JSON データに含まれていると、JavaScript の eval 関数がこれをうまく評価できずに例外を出してしまいます。これについてまとめました。 Unicode Consortium の Unicode Character Database から辿れる UnicodeData.txt には文字 U+2028 と U+2029 が次のように載っています。 2028;LINE SEPARATOR;Zl;0;WS;;;;;N;;;;; 2029;PARAGRAPH SEPARATOR;Zp;0;B;;;;;N;;;;; UnicodeData.txt から2010年1月18日に引用 一種の改行みたいなものです。JSON データの文字列にこの二つが含まれているとブラウザの JavaScript がその JSON データを取得して J

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    ockeghem
    ockeghem 2010/11/23
    『U+2028のコードポイントを持つ文字ではなく、JavaScriptの数値参照で書かれた状態の "\u2028" を置換している…本来置換する必要がないにもかかわらず』<@kazuhoにコンサルしてもらうべき
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    ockeghem
    ockeghem 2010/11/14
    JavaScriptのエスケープ処理に起因するXSS脆弱性が多いのは同意。hiddenパラメータの参照を推奨。escape_jsが\をエスケープしていないのは単純に脆弱性だよね。MySQLで\をエスケープしないのと同じ
  • 栗山町図書館

    ockeghem
    ockeghem 2010/10/31
    『お問い合わせはこちら』が難読化されたJavaScriptになっている件。妙なところに凝っているな(spamよけだろうけど)
  • 携帯サイトの作り手はiモードブラウザ2.0を意識したサイト作りをすべきか 携帯サイトを作ろう! -ちょっと詳しいモバイルサイトの作り方-

    さっそく、読者の方から、「iモードブラウザ」が「2.0」になりましたが、 携帯サイト市場としてすぐに対応は必要ですか? というご質問を頂いたので、今更ではありますが僕なりの見解をお伝えしますね。 結論から言うと 「もちろん動向をウォッチしていくことは必要だが、焦ってすぐに対応する必要はない」 と思います。 iモードブラウザ2.0がドコモ新機種(昨年の夏モデル)に搭載されたとき、 技術系のブログではいち早く過去のブラウザバージョンとの違いを比較した情報を伝えていましたが、 私はその情報はもちろん作り手として知る必要はあると思うんですけど、 おそらく皆さんが思っているのは、そうではなくて、 じゃぁすぐに対応すべきかっていうことだと思うんです。 確かに携帯サイト業界のトレンドや動向は変化が早いと言われますが、 XHTML+CSSベースで携帯サイトが作れるようになった今でも、 核となる制作ノウハウ

    ockeghem
    ockeghem 2010/08/10
    『「もちろん動向をウォッチしていくことは必要だが、焦ってすぐに対応する必要はない」』<同意。でも、JavaScript対応のコンテンツの時代は永遠に来ないような気もする
  • セキュリティ講習(7)Same Origin Policy

    「Webセキュリティ (7)Same Origin Policy」というタイトルで社内勉強会を開催しました。今まで1回も公開してないんですが、実はセキュリティの社内講習会は7回目です。近いうちに残りの6回分も公開します。 まとめ Same Origin Policy 同一ホストだけ信用するポリシー 同一ホストのみ別URLのDOM操作が可能 崩されると間接攻撃されるのと同等の脅威 「信用できないユーザが同一バーチャルサーバにJS/HTMLを設置できる場合、セキュリティ的にアウトだよ」ということを再確認しました。 ムービー 発表資料 スライド(PDF) 内容の補足など 「クロスサイト通信とセキュリティ」という章を時間の都合で削りました。このあたりもいずれ話したいところです。 参考資料 同一生成元ポリシー - MDC Mozillaの技術紹介ページ。 document.domainの書き換えとi

    ockeghem
    ockeghem 2010/08/07
    すばらしい解説
  • iモードブラウザ2.0のJavaScriptではiframe内のコンテンツを読み出せない - ockeghem's blog

    iモードブラウザ2.0では、同一ドメインであっても、iframe内のコンテンツがJavaScriptにより読み出せないよう制限が掛かっていることを確認しましたので報告します。 【追記】元の内容には、重大な事実誤認がありました。正確には、同一ドメイン・同一ディレクトリであれば読み出せます。詳しくは追記2をご覧ください。 きっかけ ケータイtwitter(twtr.jp)においてDNS Rebinding攻撃に対する脆弱性を発見・通報し、即座に修正された - 徳丸浩の日記(2010-02-22)にて既に紹介したように、twitter.comの日のケータイ向けフロントエンドであるtwtr.jpにDNSリバインディング脆弱性があったことを確認・報告し、直ちに修正されました。このエントリの中に、以下のように書いています。 すぐに確認作業が終わるだろうと思っていたが、意外なところで失敗した。ログイン

    iモードブラウザ2.0のJavaScriptではiframe内のコンテンツを読み出せない - ockeghem's blog
    ockeghem
    ockeghem 2010/08/04
    /追記 id:harupu ご指摘の方法はエントリ中の2番目のスクリプトが該当し、iframe_name.document の時点で例外が発生します。実装の差異ではなく明示的に禁止されていると推測されます→ご指摘の通りでしたので追記しました
  • HTML5.JP - 次世代HTML標準 HTML5情報サイト

    HTML5.JP は、HTML5 の国内での普及を目指し、2007 年に個人プロジェクトとして運営が開始されました。2019 年現在、すでに HTML5 は当たり前のように活用され、多くの情報がネットから入手することができるようになりました。 当サイトの役割は終えたことに加え、当サイトの更新もままならず情報も古いままであったことから、当サイトを閉鎖することにいたしました。これまで当サイトをご支援頂きました皆様には心より御礼申し上げます。 2019 年 8 月 15 日 管理人より