Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ECMA262-Edition5.1読書会
Search
YukiFujisawa
July 23, 2014
Programming
92
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ECMA262-Edition5.1読書会
https://devlove.doorkeeper.jp/events/11985
第4回 ECMA-262 Edition5.1読書会の登壇資料です。
第8条前半を要約しました
YukiFujisawa
July 23, 2014
More Decks by YukiFujisawa
See All by YukiFujisawa
チーム開発の枠組みと、それを支えるツール・役割の用語解説
yukifujisawa
3
1.5k
漫画ベイビーステップに 勇気をもらった人生
yukifujisawa
0
420
第1回 「システムテスト自動化 標準ガイド」 読書会 第1章 テスト自動化のコンテキスト
yukifujisawa
0
190
jQueryのようにWebテストが書ける Geb Navigator APIの紹介 第一回Geb勉強会
yukifujisawa
0
80
ECMA262-Edition5.1読書会 第10条 実行可能コードと実行コンテキスト
yukifujisawa
0
110
Other Decks in Programming
See All in Programming
Agents on Rails - Rails at Scale 2026
irinanazarova
0
330
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
130
R8 の設定見直しでアプリサイズ削減
andpad
0
140
The Rails Doctrine Decade
koic
2
490
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
740
Domain-Driven Transformation
hschwentner
2
2.3k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
450
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
360
mrbgem 三角測量 開発
ogom
0
200
Workers Cache を知る
syumai
0
330
Heart of Swift Concurrency
koher
0
1.2k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
520
Featured
See All Featured
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
270
Typedesign – Prime Four
hannesfritz
42
3.2k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
840
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
420
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
350
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
720
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
570
Designing for humans not robots
tammielis
254
26k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
The untapped power of vector embeddings
frankvandijk
2
1.9k
So, you think you're a good person
axbom
PRO
2
2.2k
Transcript
ECMA262-Edition5.1読書会 2014/07/23 藤澤勇樹
第8条 型 ECMAScript言語型 仕様書型 Undefined型 Null型 Boolean型 String型 Number型 Object型
Reference型 List型 Completion型 など
8-1 Undefined型 値が格納されていない変数はこの値をも つ
TYPEOF関数 typeof演算子は対象となる値のデータ型 を表す文字列を返す演算
8-2 Null型 まさにnullと呼ばれる値を持つ これがObject型になるのはなぜか?? typeof null 過去に11.4.3のNullの結果を変えようという提案があったが、 下位互換性のために採用されなかった。 http://wiki.ecmascript.org/doku.php?id=harmony:typeof_null
8-3 Boolean型 trueとfalseと呼ばれる二つの値を持つ論 理要素を持つ
8-4 String型 16ビットの符号なし整数値を要素とするゼ ロ個以上の順列の並びである どの要素も単一のUTF16コード単位である とみなされる プリミティブ値でlengthが取得できるのはなぜか? var
str = ‘str’ str.length //3
8-5 Number型 倍数精度64ビットIEEE754形式で表される 符号:1ビット 指数部:11ビット 仮数部:52ビット
絶対値が2の53乗より小さい整数は、Number 型で表現することができる Math.pow(2,53)+1; Math.pow(2,53)+3; が不正確な値になるのはなせか?
丸めモード Number型で正確に表せるのは、2の52乗 まで その後は、2進数に直した最下位が丸め 対象となる 丸めは、偶数丸めモードとなる
2の1024を超えるとInfinity(無限大)となる
8-6 Object型 Object型はプロパティのコレクション。プロパティは以下の3 つに分類される 名前付きデータプロパティ 表5
名前付きアクセサプロパティ 表6 内部プロパティ 表8、表9
プロパティ属性 var obj = Object.create(Object.prototype, { x : { value
: 1, writable : true, // x の値が変更できる enumerable : true, // for (var k in obj) で x を辿ることができる configurable : true // 下に説明 } }
デフォルト属性値 表7のデフォルト属性は、Configurableが 少なくともtrueに思える。検証間違いか? 検証方法は、オブジェクトをcreateして、何もし ない状態でプロパティが削除できるかどうかを 検証した 削除できた
内部プロパティの[[Class]] オブジェクトの仕様で定義された分類を示 す文字列 Object.prototype.toStringを除いてプログ ラムにこの値へアクセスする方法を提供し ない点に注意すること Object.Constructor.nameで取得できるが これは仕様違反?
8-7 Reference仕様型 Reference型は、delete、typeof、代入演算子の ような演算子の振る舞いを説明するために使わ れる。 Referenceは以下、3つから成り立つ Base値:undefined,Object,Boolean,String,Number,
もしくは環境レコード リファレンス名:文字列 Boolean値であるstrictリファレンスフラグ
JavaScriptのReference型 JavaScriptのReference型: <base, referencedName> *グローバルオブジェクトの場合は base=Environment Record となる 10.2.1
“string”.lengthの場合 1. Type(string)が参照でなければVそのものを返 す 2. GetBase(string)の呼び出し結果をbase(String 型)とする 3. HasPrimitibeBaseはtrueなので、特別な [[GET]]メソッドにする
4. ToObject(Base)の呼び出し=>Stringオブジェ クト 5. Stringオブジェクトの内部メソッドをプロパティ 名”length”で呼び出した結果をdescとする