このページはWeb標準化時代のJavaScriptについて書かれています。主に旧来の方法を新しい書き方にするための項目を掲載しています。 ミスや間違い、リンクエラーなどがありましたらopenspc@po.shiojiri.ne.jpまでお願いします。
このページはWeb標準化時代のJavaScriptについて書かれています。主に旧来の方法を新しい書き方にするための項目を掲載しています。 ミスや間違い、リンクエラーなどがありましたらopenspc@po.shiojiri.ne.jpまでお願いします。
先週書いたエントリー「圏論やモナドが、どうして文書処理やXMLと関係するのですか?」の内容を実際に確認するためのJavaScriptプログラムを書いてみました。 3つの関数を含み、全部で12行のライブラリです。 /* templ-process.js */ function processTemplate(templ, con) { var a = (templ.replace(/\}/g, '{')).split('{'); for (var i = 0; i < a.length; i++) if (i%2 == 1) a[i] = con(a[i]); // コンテキストconは関数 return a.join(''); } function processContext(con1, con2) { return function (k) {return processTemplat
アイコンがずばりラムダ・マーク なid:mindさんが、はてなブックマークコメントで曰く: ぉ! 問題集希望♪ そうですね。「JavaScriptで学ぶ・プログラマのためのラムダ計算」の節ごとに練習問題を入れておけばよかったな、と、ちょっと高階、じゃなくて後悔。このエントリーで練習問題を提供しましょう。JavaScriptの実行環境に関しては「もっともお手軽な対話的JavaScript処理系」を参照してください。 1. JavaScriptの関数リテラル 例に挙げたsquareは、「square(x) = x×x」という中学数学風の関数定義を二通りの方法でJavaScritpに翻訳したものです。同様に以下の関数定義を、JavaScritp関数として二通りの方法で定義してください。 double(x) = 2×x sqsum(x, y) = x×x + y×y 次の式(ラムダ計算の用語では適
「JavaScriptによるテンプレート・モナド、すっげー簡単!」にて: 紙と鉛筆でラムダ計算を実行できることは必要だな、やっぱり。 なんて強調したので、ラムダ計算の入門、いってみよう。 [追記]練習問題集を追加しました。説明を読みながら、あるいは読んだ後で是非やってみてください。→「JavaScriptで学ぶ・プログラマのためのラムダ計算 問題集」[/追記] ※印刷のときはサイドバーが消えます。 内容: JavaScriptの関数リテラル ラムダ式ってなんだ ラムダ計算の体系と適用操作 ラムダ式の例をいくつか β変換 -- ラムダ計算のキモ! β変換を何度か実行してみる 中間まとめ、まだ続きがあるよ JavaScriptの関数リテラル 最初に、JavaScriptに関する知識を確認しておきましょう。なお、JavaScriptの対話的実行環境については「もっともお手軽な対話的JavaScr
小説サイト運営支援ツールを公開する【小説HTMLの小人さん】の管理人のブログ。ツール開発記録やβ版の公開、HTMLやCSSのテクニック、小説サイト運営に関係するニュースなど。 すげーややこしい…… html4.01を標準準拠モードで書くか過去互換モードで書くかによって、javascriptでのウィンドウ幅の取得方法が変わってしまう模様。 しかもIEとFireFoxで微妙に挙動が違う! とりあえず実験結果をまとめてみたですよ。 IEの標準準拠モード document.body.clientWidth=body要素の幅 document.documentElement.clientWidth=ウィンドウに表示されている領域の幅 <スタイルシートとの関係> ・body要素のmarginを指定しておらず、ウィンドウ内に全ての要素がおさまっている場合(横スクロールなし) →document.body
JavaScript 第3版 ひさびさに JavaScript をいじろうと思い、以前に購入して長らく放置していた『JavaScript 第3版』を読みました。これまで見よう見真似でしか触ってこなかった JavaScript をちょっとまじめに勉強しよう、というのが狙いです。 もともと、この本はプログラミング言語としての JavaScript が詳しく解説されている、という話をどこかで読んだのがきっかけで購入しました。たしかに全体の半分を占める第I部「コア JavaScript」では字句構造、データ型にはじまり、変数、式、演算子、文、関数、オブジェクト、配列と、言語仕様のオーソドックスな解説が続いています。 一方、第II部の「クライアントサイド JavaScript」 ではブラウザ上での JavaScript についての各種話題が取り上げられています。しかし、この第3版の日本語版が出たのが
「ウェブリブログ」は 2023年1月31日 をもちましてサービス提供を終了いたしました。 2004年3月のサービス開始より19年近くもの間、沢山の皆さまにご愛用いただきましたことを心よりお礼申し上げます。今後とも、BIGLOBEをご愛顧賜りますよう、よろしくお願い申し上げます。 ※引っ越し先ブログへのリダイレクトサービスは2024年1月31日で終了いたしました。 BIGLOBEのサービス一覧
_ MSDNの更新がわかりにくかった(継続中) 最近、オープンライセンスというのが1ライセンスから購入可能になったので、そっちに移行しようと考えた。というのは、複数年(個人の場合は2年)一括払いなんだがその代わりに普通のパッケージ価格の半額弱の計算になるからだ。と思う(と付け加えるくらいにいま一つ良くわからない)。 で、新規のオープンライセンスのVS Pro Premium(キャンペーン中)と継続のVS Architect Premiumがほぼ同じ値段で、現在VS Architectのおれは、ランクダウンになるProではなくArchitectに移行できると思うんで発注してみたが(でもProキャンペーン中はすごく安価なのでそれはそれで魅力的ではある)、その後でリンクをクリックすると5ライセンスから(これは以前の条件のはず)と書いたページとか、なんか不安になる情報しか出てこない。まともにWeb
_ JavaScriptのおもしろさ 前回の続き。(少しずつ足してく) 表示内容を答えよ。 function false_check(x) { if (x) { alert('true'); } else { alert('false'); } } false_check(false); false_check(0); false_check(Number(0)); false_check(new Number(0)); var x; false_check(x); false_check(Boolean(false)); false_check(new Boolean(false)); false_check(Boolean(new Boolean(false))); 表示内容を答えよ。(先にタネ明かしをしておくと、IEで動かしても何がポイントかさっぱりわからないと思います) funct
GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠
またFirefoxは短縮形で取得しようとすると、設定していないプロパティにデフォルト値が入った状態で返ってくるので注意する。 getStyleValue( "div.hoge", "background" ) //Mozilla : rgb(17, 34, 51) none repeat scroll 0% 0% ルールを削除する function deleteRule( index, sheetindex ) { if( sheetindex == undefined ) sheetindex = 0; document.styleSheets[ sheetindex ].deleteRule( index ); } 全てのルールにはインデックスが振られており、それを指定することでルールから消すことができる。 ただ、同じセレクタで上書きするのとほとんど変わらないので、あまり必要にならない
GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠
2006年12月15日04:00 カテゴリLightweight Languages javascript - set(Timeout|Interval)をメソッド化 どうせなら、foo.bar(arg ...)のsemanticsを変えずに呼びたい。 Kazuho@Cybozu Labs: setTimeout をオブジェクト指向にしてみる たとえば foo.bar(hoge) を 1000ms 後に setTimeout したい場合、 foo.bar.callTimeout(1000, foo, hoge); と書くことができます。 というわけで私家版。 JavaScriptのfunctionはオブジェクト指向どころかオブジェクトそのものですから、以下のようにしてもよいのでは?こうすることで、f(arg ...)があって、g = f.setTimeout(ms)とした場合、g()の引数
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
JavaScript雑記帳 JavaScriptを勉強していて思ったことなどを書いています。 onloadと関数の呼び出しについて イベントハンドラを関数名の位置に書く ブラウザ判別について 論理積と論理和で代入する値を選択する this値について 二重論理否定 HOME
Video Blogãã¼ã ãã¼ã¸ å¶ä½It æ±äººãã¼ã Pcã¦ã§ã ãã¶ã¤ã³ãã½ã³ã³ 販売ãã¼ã ãã½ã³ã³ãã½ã³ã³è³æ ¼ Itãã¼ã ãã¼ã¸ 製ä½ãã½ã³ã³ é販 ãã¹ãã£ã³ã° ãµã¼ãã¹Pc ã»ãã¥ãªãã£It ã¹ã¯ã¼ã«ãã¡ã¤ã³ãã¼ã ãã¼ã¸ å¶ä½ ä¼ç¤¾Web ãã¶ã¤ã³
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く