<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                #第3章 類型、值和變量 - <a href="#no1">3.1 數字</a> - <a href="#no2">3.2 文本</a> - <a href="#no3">3.3 布爾值</a> - <a href="#no4">3.4 null 和 undefined</a> - <a href="#no5">3.5 全局對象</a> - <a href="#no6">3.6 包裝對象</a> - <a href="#no7">3.7 不可變的原始值和可變的對象引用</a> - <a href="#no8">3.8 類型轉換</a> - <a href="#no9">3.9 變量聲明</a> - <a href="#no10">3.10 變量作用域</a> ##<a name="no1">3.1 數字</a> > js中不區分整數值和浮點數值,所有的數字均用浮點數值表示。 ###3.1.1 整型直接量 > 略 ###3.1.2 浮點型直接量 > 浮點型直接量可以含有小數點,它們采用的是傳統的實數寫法。一個實數由整數部分、小數點和小數部分組成。還可以用指數計數法表示浮點類型直接量,即在實數后跟字母`e`或`E`,后面在跟負號,其后再加一個整形的指數。 ###3.1.3 JavaScript中的算術運算 > js程序是使用語言本身提供的算術運算符來進行數字運算的。(+、-、*、/、%)。更復雜的運算通過`Math`對象的屬性定義的函數和常量來實現。 ###3.1.4 二進制浮點數和四舍五入錯誤 > 略 ###3.1.5 日期和時間 > js語言核心包括`Date()`構造函數,用來創建表示日期和時間的對象。 ##<a name="no2">3.2 文本</a> > js通過字符串類型來表示文本。 ###3.2.1 字符串直接量 > 在JS程序中的字符串直接量,是由單引號或雙引號括起來的字符序列。 ###3.2.2 轉義字符 > 略 ###3.2.3 字符串的使用 > JS的內置功能之一就是字符串連接。 var s = 'hello, world'; s.charAt(0); //=> h s.charAt(s.length - 1); //=> d s.substring(1, 4); //=> ell s.slice(1, 4); //=> ell s.slice(-3); //=> rld s.indexOf('l') //=> 2 s.lastIndexOf('l') //=> 10 s.split(', '); //=> ['hello', 'world'] s.replace('h', 'H'); //=> Hello, world ###3.2.4 模式匹配 > JS定義了`RegExp()`構造函數,用來創建表示文本匹配模式的對象。具體第10章會有介紹。 ##<a name="no3">3.3 布爾值</a> > 布爾值指代真或假、開或關、是或否。這個類型只有兩個值,保留字`true`和`false`。 ##<a name="no4">3.4 null 和 undefined</a> > `null`是JS語言的關鍵字,它表示一個特殊值,常用來描述“空值”。 # > `undefined`也表示值得空缺。變量沒有初始化,如果要查詢對象屬性或數組元素的值時返回`undefined`則說明這個屬性或元素不存在。 **如果你想將`null`和`undefined`賦值給變量或者屬性,或將它們作為參數傳入函數,最佳選擇是使用`null`。** ##<a name="no5">3.5 全局對象</a> > 全局對象(`global object`)在JS中有著重要的用途:全局對象的屬性是全局定義的符號,JS程序可以直接使用。在JS解釋器啟動時,它將創建一個新的全局對象,并給它一組定義的初始屬性: - 全局屬性,比如`undefined`、`Infinity`和`NaN` - 全局函數,比如`isNaN()、parseInt()、eval()` - 構造函數,比如`Date()、RegExp()、String()、Object()和Array()` - 全局對象,比如`Math`和`JSON` ##<a name="no6">3.6 包裝對象</a> > JS對象是一種復合值:它是屬性或已命名值得集合。通過“.”符號來引用屬性值。當屬性值是一個函數的時候,稱其為方法。 **存取字符串、數字或布爾值的屬性時創建的臨時對象成為包裝對象。** ##<a name="no7">3.7 不可變的原始值和可變的對象引用</a> > JS中的原始值(`undefined、null、`布爾值、數字和字符串)與對象(包括數組和函數)有著根本的區別。原始值是不可更開的:任何方法都無法更改一個原始值。 # **原是值的比較是值的比較:只有在它們的值相等時它們才相等。** # **對象的比較并非值的比較:即使兩個對象包含同樣的屬性及相同的值,它們也是不相等的。各個索引元素完全相等的兩個數組也不想等。** # **對象的比較是引用的比較,當且僅當它們引用同一個基對象時,它們才相等。** ##<a name="no8">3.8 類型轉換</a> ###3.8.1 轉換和相等性 > **一個值轉換為另一個值并不意味著兩個值相等。** ###3.8.2 顯示類型轉換 > 做顯示類型轉換最簡單的方法就是使用`Boolean()`、`Number()`、`String()`或`Object()`函數。當不通過`new`運算符調用這些函數時,它們會作為類型轉換函數按相應規則進行類型轉換。 **除了`null`和`undefined`之外的任何值都具有`toString()`方法。** ###3.8.3 對象轉換為原始值 - 對象到布爾值的轉換非常簡單:所有的對象(包括函數和數組)都轉換為`true`。對于包裝對象也是如此。 - 對象到字符串和對象到數字的轉換是通過調用待轉換對象的一個方法來完成的。 > 所有對象繼承了兩個轉換方法:1、`toString()`:它的作用是返回一個反映這個對象的字符串。2、`valueOgf()`:如果存在任意原始值,它就默認將對象轉換為表示它的原始值。 ##<a name="no9">3.9 變量聲明</a> > 在JS中,使用一個變量之前應當先聲明。變量是使用關鍵字`var`來聲明的。 ##<a name="no10">3.10 變量作用域</a> > 一個變量的作用域是程序源代碼中定義這個變量的區域。全局變量擁有全局作用域,在JS代碼中的讓你和地方都是有意義的。**局部變量的優先級高于同名的全局變量。** ###3.10.1 函數作用域和聲明提前 > JS中的函數作用域:函數內聲明的所有變量在函數體內始終是可見的。變量在聲明它們的函數體以及這個函數體嵌套的任意函數體內都是有定義的。 > **聲明提前:即JS函數里聲明的所有變量都被“提前”至函數體的頂部。這意味著變量在聲明之前甚至已經可用。** ###3.10.2 作為屬性的變量 略 ###3.10.3 作用域鏈 > JS是基于詞法作用域的語言:通過閱讀包含變量定義在內的數行源碼就能知道變量的作用域。全局變量在程序中始終都是有定義的,局部變量在聲明它的函數體內以及其所嵌套的函數內始終是有定義的。P59《JavaScript權威指南-第六版》
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看