欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解javascript的變量與標識符

 更新時間:2016年01月04日 08:40:08   作者:小火柴的藍色理想  
這篇文章主要為大家介紹了javascript的變量與標識符,感興趣的小伙伴們可以參考一下

一、變量

  從字面上看,變量是可變的量;從編程角度講,變量是用于存儲數(shù)據(jù)的容器

1.1變量特性
  javascript中的變量是松散類型的,可以保存任何類型的數(shù)據(jù)。由于不存在定義某個變量必須要保存何種數(shù)據(jù)類型值的規(guī)則,變量的值及其數(shù)據(jù)類型可以在腳本的生命周期內(nèi)改變 

1.2變量命名
  變量可以任意取名,但必須遵循命名規(guī)則:

[1]第一個字符必須是字母、下劃線或美元符號。其他字符可以是字母、下劃線、美元符號或數(shù)字

//錯誤示范
 6num //開頭不能用數(shù)字
 %sum //開頭不能用除(_ $)外特殊符號,如(% + /等)
 sum+num //開頭中間不能使用除(_ $)外特殊符號,如(% + /等)
  

[2]字符中的字母可以包括拓展的ASCII或Unicode字母字符,也可以使用中文

[3]不能使用關鍵字、保留字、true、false和null

[4]變量對大小寫敏感

[5]標識符應采用小駝峰格式,第一位應該是數(shù)據(jù)的類型,常見的標識如下:

數(shù)組       a    Array      aItems
布爾值          b    Boolean     bIsComplete
浮點數(shù)          f    Float       fPrice
函數(shù)      fn    Function    fnHandler
整數(shù)       i    Integer    iItemCount
對象        o    Object     oDIv1
正則表達式       re    RegExp     reEmailCheck
字符串         s    String     sUserName
變量       v    Variant   vAnything     

1.3變量聲明
聲明格式為: var 變量名;

var num;//聲明一個變量
var num1,num2;//聲明多個變量

  用var操作符定義的變量將成為定義該變量的作用域中的局部變量。若省略var操作符,可以創(chuàng)建一個全局變量,但在嚴格模式下會拋出 ReferenceError錯誤

var num1=1;
num2=2;//在嚴格模式下會報錯
num3;//報錯

  如果重新聲明 JavaScript 變量,該變量的值不會丟失

var carname="Volvo";
console.log(carname);//Volvo
var carname;
console.log(carname);//Volvo

1.4聲明提升

  javascript中的變量聲明會提升到所有函數(shù)和語句之前,但提升后的變量將返回undefined,因為只是聲明提升,賦值操作并沒有提升

console.log(myvar); // undefined
var myvar = "local value";
console.log(myvar); // "local value"
 

1.5變量賦值
  使用"="給變量賦值,也就是存儲內(nèi)容。變量可以在聲明時賦值,但不能有其他操作,如+=、-=等

var num = 5;
//上下是等價的
var num;
num = 5;
var a = 2;//正確
var a += 2;//錯誤
var a = 2++;//錯誤,++只能用于變量,不能用于常量

二、標識符

標識符是指變量、函數(shù)、屬性的名字,或者函數(shù)的參數(shù) 

2.1標識符命名
  命名規(guī)則同變量命名規(guī)則,對于不符合命名規(guī)則的屬性如border-color應寫為大括號方式[borderColor] 

2.2標識符解析
  標識符解析是沿著作用域鏈一級一級地搜索標識符的過程。搜索過程始終從作用域鏈的前端開始,然后逐級地向后回溯,直到找到標識符為止。

  [1]如果局部環(huán)境中存在著同名標識符,就不會使用父環(huán)境中的標識符

  [2]如果找不到標識符,表示標識符尚未聲明,通常會導致錯誤發(fā)生

  [3]JavaScript引擎在優(yōu)化標識符查詢方面做得不錯,訪問父環(huán)境和局部環(huán)境的標識符的時間差別可以忽略不計

var num = 1;
function test(){
 num = 2;
 console.log(num);//2
 console.log(number);//報錯
}
test();

以上就是關于javascript的變量與標識符的相關內(nèi)容,希望對大家的學習有所幫助。

相關文章

  • CocosCreator經(jīng)典入門項目之flappybird

    CocosCreator經(jīng)典入門項目之flappybird

    這篇文章主要介紹了CocosCreator經(jīng)典入門項目之flappybird,詳細說明了制作的每個步驟,還有詳盡的代碼,對CocosCreator感興趣的同學,一定要看一下
    2021-04-04
  • 分享bootstrap學習筆記心得(組件及其屬性)

    分享bootstrap學習筆記心得(組件及其屬性)

    Bootstrap是一種web框架,是基于HTML,CSS和JS的一種目前較為流行的前端框架。本篇文章將總結(jié)常用組件及其屬性,需要的朋友參考下吧
    2017-01-01
  • JS中怎樣判斷undefined(比較不錯的方法)

    JS中怎樣判斷undefined(比較不錯的方法)

    用servlet賦值給html頁面文本框值后,用alert來彈出這個值.結(jié)果顯示"undefined".下面為大家介紹下具體的判斷方法,大家可以參考下
    2014-03-03
  • JavaScript中的變量提升和函數(shù)提升

    JavaScript中的變量提升和函數(shù)提升

    這篇文章主要介紹了JavaScript中的變量提升和函數(shù)提升,在js中對變量進行操作后打印值經(jīng)常會出現(xiàn)undefined的現(xiàn)象。其實原因是因為js中有一個叫做變量提升的功能
    2022-07-07
  • 關于取不到由location.href提交而來的上級頁面地址的解決辦法

    關于取不到由location.href提交而來的上級頁面地址的解決辦法

    驗證上級頁面來源取不到由location.href提交而來的頁面地址,搜索了一大堆沒有合適的解決辦法,突然想到通過模擬JS點擊鏈接的方法
    2009-07-07
  • 詳解webpack自定義loader初探

    詳解webpack自定義loader初探

    這篇文章主要介紹了webpack自定義loader初探,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • 使用requestAnimationFrame實現(xiàn)js動畫性能好

    使用requestAnimationFrame實現(xiàn)js動畫性能好

    requestAnimationFrame優(yōu)于setTimeout/setInterval的地方在于它是由瀏覽器專門為動畫提供的API,在運行時瀏覽器會自動優(yōu)化方法的調(diào)用,并且如果頁面不是激活狀態(tài)下的話,動畫會自動暫停,有效節(jié)省了CPU開銷,這篇文章給大家詳細介紹使用requestAnimationFrame實現(xiàn)js動畫
    2015-08-08
  • 手機Web APP如何實現(xiàn)分享多平臺功能

    手機Web APP如何實現(xiàn)分享多平臺功能

    這篇文章主要介紹了手機Web APP如何實現(xiàn)分享多平臺功能的相關資料,需要的朋友可以參考下
    2016-08-08
  • 你未必知道的JavaScript和CSS交互的5種方法

    你未必知道的JavaScript和CSS交互的5種方法

    網(wǎng)頁中都有.js文件和.css文件,但這并不意味著CSS和js是獨立不能交互的,下面與大家分享js與css交互的5種方法
    2014-04-04
  • 前端常用的js函數(shù)方法

    前端常用的js函數(shù)方法

    這篇文章主要給大家分享的是常用的js函數(shù)的方法,告別搜索引擎的幫助,提高你的開發(fā)效率,,需要的朋友可以參考一下,希望對你的學習有所幫助
    2021-12-12

最新評論