摘要:在此,我們首先根據變量的作用域,將變量劃分為三級,具體是全局變量局部變量和參數變量。
【摘要】本文是專為JavaScript入門者而總結的,總體上將JavaScript的基礎部分分成了九大塊,分別是變量、運算符、數組、流程控制結構、字符串函數、函數基礎、DOM操作基礎、文檔對象模型DOM和正則表達式。
【關鍵字】變量、運算符、數組、流程控制結構、函數、DOM、正則表達式。
本篇文章的主要內容是圍繞著JavaScript(以后簡稱JS)的基礎進行歸納與總結的,一方面可以給入門級的JS愛好者提供一個學習的路徑,另一方面,也可以給稍有基礎的JS學習者進行知識梳理用。
作為網頁設計三層分離結構中的第三部分,JS的作用與地位毋庸置疑,然而,想系統化掌握JS的基礎,為后續的高階學習做好鋪墊,還必須要對JS的基本內容有清晰的認識,所以,在此將JS的基礎部分分為九大模塊來進行歸納。
一、JS變量
對于變量而言,我們主要要從四個方面來掌握,具體包括命名、聲明、類型和作用域,這四個方面在其他的編程語言中也一樣存在,下面我們就具體來分別歸納:
1、命名
在變量的命名方面,我們需要了解命名的方法和命名的規則。
(1)命名的方法
命名的方法在實際的項目中,我們通常會有兩大類,一類是匈牙利命名法,這種命名法的寫法是:變量名=類型+對象描述,例如我們要命名一個表單變量時,我們首先知道,該變量的類型是表單(form),同時,我們要知道這個表單的功能或含義,比如說這個表單是一個Switchboard,所以此時,我們對這個表單變量的命名應該為frmSwitchboard,這樣,其他人在閱讀你的代碼時,就很容易理解了,當看到frm的時候,就知道你這個變量是一個表單變量了。
除了匈牙利命名法之外,另一類是駝峰命名法,這也是當前大多數項目中經常使用的命名方法,而駝峰命名法又分為大小寫。如果全部是小寫的命名,那么每兩個單詞之間是使用一個下劃線“_”來連接的,例如:frm_switch_board;如果命名中大小寫同時存在,此時,又將其分為大駝峰和小駝峰。大駝峰的命名是每個單詞的首字母都是大寫字母,例如:FrmSwitchBoard;而小駝峰的命名是第一個單詞的首字母要小寫,其后的單詞的首字母都要大寫,例如:frmSwitchBoard。
以上就是變量的命名方法,當前,國內主要采用的命名方法是小駝峰命名法。那么,我們在了解命名方法的同時,我們還必須同時掌握類型的問題,在JS中,類型主要有以下幾種:
<1>Int類型 — i
<2>Float類型 — fl
<3>Boolean類型 — b
<4>String類型 — s
<5>Array數組 — a
<6>Object對象 — o
<7>Function函數 — fn
<8>Regular Expression正則 — re
我們在了解了類型之后,接下來我們再來看看變量命名的規則問題。
(2)命名的規則
我們之所以要了解變量的命名規則,目的是為了讓我們命名的變量合法,也就是說可以正常使用。
在JS中,變量命名的規則一般需要遵循以下三條:
<1>變量名的首字符只能是英文字母或者下劃線;
<2>變量名可以由英文字符、數字和下劃線組成,不能包含其他的特殊字符,如@、!等字符;
<3>變量名不能是JS中的關鍵字或保留字。
2、聲明
我們在完全理解并掌握了變量的命名之后,接下來我們來看看變量的聲明問題。對于變量的聲明,我們也需要把握好以下三個原則:
(1)JS中的變量通常是顯式聲明,例如:var 變量名;
(2)在聲明變量時,我們切忌出現幾個問題。其一,聲明的變量沒有數據類型;其二,重復聲明變量;其三,隱式聲明變量;其四,不聲明而直接賦值。
而解決此類問題的一個最簡單的辦法就是先寫變量聲明符var,緊接著就寫變量名,最后再直接給變量賦初值,例如:“var i = 0;” ;
(3)我們在聲明變量時還需要養成一個好習慣,簡單概括就十二個字:先聲明、后讀寫、先賦值、后運算。
3、類型
對于變量而言,它其實可以分為兩大類,一類是值類型,另一類是引用類型。
(1)值類型
對于值類型的變量,它具備以下幾個特征:
<1>占用的存儲空間是固定的;
<2>在保存與復制的時候,操作的是值本身;
<3>可以使用JS中的類型檢測函數typeof()來檢測其具體的類型;
(2)引用類型
而引用類型的變量,它也具備幾個特征:
<1>變量占用的存儲空間不是固定的;
<2>在保存與復制的時候,操作的是指向該變量的一個指針;
<3>可以通過instanceof()函數來檢測其數據類型
同時,我們還需要了解的一個問題,那就是使用new()方法構造出的對象是屬于引用類型的變量。
4、作用域
我們在了解了變量的命名、聲明和類型之后,我們最后再來看看,在實際的項目中,我們所使用的變量的另外一個比較關鍵的問題,那就是變量的作用域。在此,我們首先根據變量的作用域,將變量劃分為三級,具體是全局變量、局部變量和參數變量。
對于上述三級變量,我們分別從寫法到調用,再到優先級最后再到特性等三個層次來總結。
(1)寫法與調用
對于全局變量,它的寫法要求我們在聲明此變量的時候,要放在函數體的外部來進行聲明,而調用的時候,可以在項目的任何位置進行;對于局部變量,它的寫法要求我們必須在函數體的內部進行聲明,而調用時,只能在函數體內部調用;再者,對于參數變量,它也是要求在函數聲明的時候同時聲明,而調用時,也必須出現在函數體的內部。
(2)優先級
在優先級方面,有三個參考的規則:
<1>同名的局部變量的優先級要高于全局變量;
<2>同名的參數變量的優先級也是高于全局變量;
<3>同名的局部變量的優先級高于參數變量。
(3)特性
對于變量的作用域,有以下一些特點:
<1>全局變量可以看作是全局對象的屬性,而局部變量可以看作是調用對象的屬性;
<2>內層函數可以訪問外層函數的局部變量,但外層函數不能訪問內層函數的局部變量;
<3>在變量的生命周期方面,全局變量除非被刪除,否則將一直存在,局部變量則存活于自聲明起到函數運行結束或者被刪除之前。
以上內容就是我們在學習JavaScript時,對于變量方面需要掌握的知識點,希望能給大家帶來參考。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/79435.html
摘要:今天主要說一下個人情況和學習路徑規劃。個人情況作為浙江新高考最后一屆小白鼠,經歷了許許多多手動和諧的事情,但是七選三有技術是唯一好的一件事情,讓我有了一點編程的基礎。 前言 Hello World!這是我思否的第一篇技術博客(不知道算不算),剛剛經歷了高考,有個10+分的滑鐵盧,現坐標浙江杭州,被西南某末流211機械專業錄取。雖然被苦x的機械錄取,但還是對計算機有著幻想。以后想通...
摘要:今天主要說一下個人情況和學習路徑規劃。個人情況作為浙江新高考最后一屆小白鼠,經歷了許許多多手動和諧的事情,但是七選三有技術是唯一好的一件事情,讓我有了一點編程的基礎。 前言 Hello World!這是我思否的第一篇技術博客(不知道算不算),剛剛經歷了高考,有個10+分的滑鐵盧,現坐標浙江杭州,被西南某末流211機械專業錄取。雖然被苦x的機械錄取,但還是對計算機有著幻想。以后想通...
某熊的技術之路指北 ? 當我們站在技術之路的原點,未來可能充滿了迷茫,也存在著很多不同的可能;我們可能成為 Web/(大)前端/終端工程師、服務端架構工程師、測試/運維/安全工程師等質量保障、可用性保障相關的工程師、大數據/云計算/虛擬化工程師、算法工程師、產品經理等等某個或者某幾個角色。某熊的技術之路系列文章/書籍/視頻/代碼即是筆者蹣跚行進于這條路上的點滴印記,包含了筆者作為程序員的技術視野、...
摘要:模塊化是隨著前端技術的發展,前端代碼爆炸式增長后,工程化所采取的必然措施。目前模塊化的思想分為和。特別指出,事件不等同于異步,回調也不等同于異步。將會討論安全的類型檢測惰性載入函數凍結對象定時器等話題。 Vue.js 前后端同構方案之準備篇——代碼優化 目前 Vue.js 的火爆不亞于當初的 React,本人對寫代碼有潔癖,代碼也是藝術。此篇是準備篇,工欲善其事,必先利其器。我們先在代...
閱讀 3209·2021-11-23 09:51
閱讀 3669·2021-09-22 15:35
閱讀 3646·2021-09-22 10:02
閱讀 2956·2021-08-30 09:49
閱讀 509·2021-08-05 10:01
閱讀 3376·2019-08-30 15:54
閱讀 1633·2019-08-30 15:53
閱讀 3558·2019-08-29 16:27