JavaScript--總結一(變量+數據類型+運算符)

JavaScript是什麼?javascript

是一門腳本語言(不須要編譯,直接執行)html

是一門解釋性語言前端

是一門動態類型的語言java

是一門基於對象的語言瀏覽器

 JavaScript分爲三個部分函數

1.ECMAScript  標準----js的基本語法spa

2.DOM---Document Object Model 文檔對象模型(一套操做頁面元素的API)code

DOM能夠把HTML看做是文檔樹,經過DOM提供的API對樹上的節點進行操做htm

3.BOM---Browser  Object  Model   瀏覽器對象模型(一套操做瀏覽器功能的API)對象

經過BOM操做瀏覽器窗口,好比(彈出框,控制瀏覽器跳轉,獲取分辨率等)

 

JavaScript和HTML、CSS的區別

一、HTML:提供網頁的結構,提供網頁中的內容

二、CSS:用來美化網頁

三、JavaScript:能夠用來控制網頁內容,給網頁增長動態的效果 

JavaScript的書寫位置

1.寫在行內

<input type="button" value="按鈕" onclick="alert('Hello World')" />

2.寫在script標籤中

<head>
  <script>
    alert('Hello World!');
  </script>
</head>

3.寫在外部js文件中,在頁面引入

<script src="main.js"></script>

 js代碼須要注意的問題

在一對javascript標籤的代碼中有錯誤的代碼時,那麼在錯誤代碼後的js代碼都不會執行

若是第一對Script中有錯誤的代碼,不會影響後面的Script標籤中的js代碼執行

script的標籤中能夠寫什麼內容 type="text/javascript"是標準寫法或者寫language="JavaScript"均可以可是,目前在咱們的html頁面中,type和language均可以省略,緣由:html是遵循h5的標準
 
若是script標籤是引入外部js文件的做用,那麼這對標籤中不要寫任何的js代碼,若是要寫,從新寫一對script標籤,裏面寫代碼
 
變量
什麼是變量?
變量是計算機內存中存儲數據的標識符,根據變量名稱能夠獲取內存中存儲的數據
爲何使用變量?
使用變量能夠方便的獲取或者修改內存中的數據
js中存儲數據使用變量的方式(名字,值---數據)
js中聲明變量都用var---存儲數據,數據應該有對應的數據類型
js中的字符串類型的值都用雙引號或者單引號
 
變量---做用,存儲數據或者操做數據
變量聲明(有var,有變量名字,沒有值)
var age;
變量初始化(有var ,有變量名字,有值)
var age;
age = 18;

同時聲明多個變量

var age, name, sex;
age = 10;
name = 'zs';

同時聲明多個變量而且賦值

var age = 10, name = 'zs';

變量的命名規則和規範

規則--必須遵照的,不遵照會出現報錯

由字母、數字、下劃線、$符號組成,不能以數字開頭

不能用關鍵字和保留字,例如for、while。

區分大小寫

 

規範--建議遵照,不遵照不會報錯

變量名必須有意義

遵照駝峯命名法,首字母小寫,後面單詞的首字母大寫

 

數據類型

  • 字面量

在源代碼中一個固定值的表示法

數值的字面量:8,9,0

字符串字面量:「前端」,「小田」

布爾字面量:true,false

  •   js中簡單數據類型
Number:  數值字面量,數值的固定值的表示法,數字類型(整數和小數)
數值判斷:
NaN: not a number
NaN與和任何值都不相等,包括它自己
is NaN: is not a number
 
注意:
不要用小數驗證小數
不要使用NaN判斷是否是NaN,應該使用is NaN
var num;
   console.log(num+10==NaN);//---false
num+10不是一個數字 NaN 倆個不是數字的值沒法判斷相等

如何驗證這個結果是否是NaN,應該使用isNaN()//
使用isNaN()驗證是一個數字時,結果爲false
使用isNaN()驗證不是一個數字時,結果爲true
須要表示十進制:正常數字
須要表示八進制:以0開頭
須要表示十六進制:0x開頭
String: 字符串類型(值通常都是單引號或者雙引號括起來的)
轉義符:
字符串的長度:使用length屬性能夠獲取字符串的長度
字符串的拼接:使用+鏈接
倆邊只要有一個是字符串,那麼+就是字符串拼接功能
倆邊若是都是數據,那麼就是算數功能
Boolean: 布爾類型(值只有倆個,true(真1),false(假0))
Undefined: 未定義,值只有一個:undefined
什麼狀況下結果爲undefined?
變量聲明瞭,沒有賦值
函數沒有明確返回值,若是接受了,結果是undefined
若是一個變量的結果是undefined和一個數字進行計算,結果:NaN,不是一個數字,也沒有意義
Null: 空類型,值只有一個:null,一個對象指向爲空,此時能夠賦值爲null(變量的值若是想爲null,必須手動設置)
  • 複雜數據類型
Object: 對象
 
如何獲取變量的數據類型?
typeof  變量名
typeof(變量名)
var age = 18;
console.log(typeof age);  // 'number'
console.log(typeof(age));

 數據類型轉化

如何使用谷歌瀏覽器,快速的查看數據類型?

字符串的顏色是黑色的,數值類型是藍色的,布爾類型也是藍色的,undefined和null是灰色的

  • 其餘類型轉字符串類型

.toString();

var num = 5;
console.log(num.toString());

String();

若是變量是有意義--調用.toString()使用轉換

若是變量沒有意義--使用String()轉化

   var num2;//值爲undefined,無心義
   console.log(num2.toString());
   var num3=null;
   console.log(num3.toString());//以上會報錯

    這個能夠
   var num2;
   console.log(String(num2));
   var num3=null;
   console.log(String(num3));
  • 其餘類型轉數值類型

Number();轉數字

Number()能夠把任何值轉化成數值,若是要轉換的字符串中有一個不是數值的字符,返回NaN

parseInt();轉整數

var num1 = parseInt("12.3abc");  // 返回12,若是第一個字符是數字會解析知道遇到非數字結束
var num2 = parseInt("abc123");   // 返回NaN,若是第一個字符不是數字或者符號就返回NaN

parse Float();轉小數

parseFloat()把字符串轉換成浮點數
parseFloat()和parseInt很是類似,不一樣之處在與
parseFloat會解析第一個. 遇到第二個.或者非數字結束
若是解析的內容裏只有整數,解析成整數

+,-0等運算

 var str = '500';
console.log(+str); // 取正
console.log(-str); // 取負
console.log(str - 0);

  • 其餘類型轉化爲布爾類型

Boolean()

0 ''(空字符串) null undefined NaN 會轉換成false 其它都會轉換成true

 

操做符

一些符號---用來計算

算數運算符:+ - * / %

算數運算符表達式:由算數運算符鏈接起來的表達式

  • 一元運算符 ++ --

只有一個操做數的運算符 ++ --

++ 自身加一

-- 自身減一

總結 前置++:先加1,後參與運算

後置++:先參與運算,後加1

上面兩個理解後,下面兩個自通

前置-- :先減1,後參與運算

後置-- :先參與運算,後減1

說明:var  num=1; ++num以後num的值爲2,++num的值2

         num++以後的num值爲2,num++的值爲1

  • 二元運算符: 
這個操做符須要兩個操做數就能夠運算
  • 三元運算符:

表達式1 ? 表達式2 : 表達式3
是對if……else語句的一種簡化寫法

  • 複合運算符: +=  -=  *= /= %=

複合運算表達式:由複合運算符鏈接起來的表達式

 關係運算符:>  <  >=  <= ==不嚴格的 ===嚴格  !=不嚴格的不等,!==嚴格的不等

關係運算表達式:由關係運算符鏈接起來的表達式

關係運算表達式的結果是布爾類型

邏輯運算符:

&&:與  倆個操做數同時爲true,結果爲true,不然都是false

||  : 或  倆個操做數有一個爲true,結果爲true,不然爲false

 !:  非  取反

 賦值運算符

=  +=  -=  *=  /+  %=

例如:
var num = 0;
num += 5;    //至關於  num = num + 5;
運算符的優先級

優先級從高到底 1. () 優先級最高 2. 一元運算符 ++ -- ! 3. 算數運算符 先* / % 後 + - 4. 關係運算符 > >= < <= 5. 相等運算符 == != === !== 6. 邏輯運算符 先&& 後|| 7. 賦值運算符

相關文章
相關標籤/搜索