Python小白學習進行時---js基礎(2018-7-13)

一、JS初識
二、JS語法
三、運算符
四、分支結(jié)構(gòu)

============================================================

一、JS初識

JS是JavaScript的縮寫,是一種web標準中的行為標準,是一種專門用來控制網(wǎng)頁的腳本語言。

使用JS

a.內(nèi)聯(lián):將JS代碼寫在標簽中。
b.內(nèi)部:寫在script標簽中,注意這個標簽可以放到html文件的任何位置。一般放在body的最后面。
c.外部: 寫在一個js文件中(后綴是.js的文件),通過script標簽的src屬性來導入對應的js文件。導入的位置不是固定的,可以根據(jù)需求在合適的位置導入。

二、JS語法

1、語句

a.js語法上,一條語句結(jié)束可以寫分號也可以不寫分號;一行有多條語句,每條語句之間必須寫分號。
b.JS中沒有縮進的規(guī)范,但是在實際開發(fā)的時候添加縮進以達到一定的美觀。

2、注釋

a.單行注釋://注釋內(nèi)容
b.多行注釋:/注釋內(nèi)容/

3、標識符

標識符:用來給變量進行命名

1.由字母、數(shù)字和下劃線以及$組成,并且數(shù)字不能開頭。
2.不能是關鍵字。
3.下劃線和$不開頭。

4、字面量

a、數(shù)字:12
b、字符串:‘a(chǎn)sdf’、‘1234’
c、數(shù)組:[1,2,3,4,5,‘n’]
d、對象:{‘a(chǎn)’:1,‘c’:32}
e、布爾:true、false
f、特殊值:null、undefined

變量

變量的聲明:
格式:var 變量名;或者 var 變量名 = 初值
變量命名:標識符,駝峰式命名(除了第一個單詞首字母,其他的單詞首字母大寫小寫,例如:userName)

1、聲明變量時可以給變量賦值

var num = 20;

2、同時聲明多個變量

var num1, num2 = true, num3;

console.log(num2);

基本數(shù)據(jù)類型

數(shù)據(jù)類型的查看: typeof 表達式
JS中的基本數(shù)據(jù)類型有:Number(數(shù)字)、String(字符串)、Boolean(布爾)、Array(數(shù)組)、Object(對象)

1、Number:
a.包含所有的數(shù)字(整數(shù)、浮點數(shù)、科學計數(shù), NaN->不合法的數(shù)字) -- 數(shù)字類型只有一種,值類型。
b.Number() --> 可括號中的數(shù)據(jù)轉(zhuǎn)換成Number類型。
將字符串轉(zhuǎn)換成數(shù)字的時候,只有去掉字符串的引號后剩下的部分是一個數(shù)字的字符串才能轉(zhuǎn)換成合法數(shù)字,否則結(jié)果是NaN。
布爾true會轉(zhuǎn)換成1,false轉(zhuǎn)換成0

2、String(字符串)
a.可以使用單引號或者雙引號引起來的字符集,就是字符串數(shù)據(jù):'abc',"12gh"....
b.JS中也可以使用轉(zhuǎn)義字符來表示有特殊功能和特殊意義的字符: \ ,' ," , \t ,\n等
c.JS字符也是Unicode字符
d.通過下標獲取某個字符:下標范圍是0~字符串長度-1.
注意:js中下標不能是負數(shù);也不可以切片
e.通過 new String()去創(chuàng)建一個Object類型的字符串。

var str4 = 'abc\nhujn';
console.log(str4);

3、Boolean(布爾)
Boolean: true,false
1.數(shù)字轉(zhuǎn)換成Boolean值,0和NaN會轉(zhuǎn)換成false,其他數(shù)字會轉(zhuǎn)換成true
2.字符串轉(zhuǎn)換成Boolean值,空串是false,其他的都會轉(zhuǎn)換成true
3.null,undefined都會轉(zhuǎn)換成false

var b1 = Boolean(undefined)
console.log(b1)

4、Array(數(shù)組)
1.存數(shù)組數(shù)據(jù)存的是地址
2.數(shù)組的元素可以是任何類型的數(shù)據(jù),可以通過下標去獲取對應的元素
3.下標的范圍:0~長度-1
4.通過length可以獲取數(shù)組元素的個數(shù)

var a1 = [1,2,3,'acd',true];
console.log(a1);
console.log(a1[2]);

添加元素
push:在數(shù)組的最后添加一個或者多個元素,返回最新的數(shù)組的長度

a1.push(10);
count = a1.push('a','abab');
console.log(a1, count);

刪除元素
pop:將數(shù)組中的最后一個元素刪除,并且返回被刪除的元素

del = a1.pop();
console.log(a1, del);

切片
slice(起始下標,結(jié)束下標):從數(shù)組的起始下標開始,到結(jié)束下標前的所有元素,作為一個新的數(shù)組的元素并且返回

newArray = a1.slice(0,3);
console.log(newArray);

刪除指定下標的元素
splice(下標,個數(shù)): 從指定下標開始刪除指定個數(shù)元素

var a2 = [1,2,3,4,5];
a2.splice(1,2);
console.log(a2);

在指定位置添加元素
splice(下標,0,元素1,元素2,元素3...):在指定的下標前插入指定的一個或者多個元素

var a3 = [1,2,3,4,5];
a3.splice(2,0,'a','b');
console.log(a3);

在數(shù)組的開頭添加一個或者多個元素

a3.unshift('a','b');
console.log(a3);

修改元素

a2[0] = 100;
console.log(a2);
對象

Object: 對象類型就是python中的字典
變量存儲對象,存的是對象的地址
存的時候以鍵值對的形式去存儲數(shù)據(jù),這個鍵可以看成對象的屬性

// 創(chuàng)建了一個變量,存的是一個對象的地址
var obj1 = {'a':1, 'b':2, 'c':'abc'};

// 取值: 通過key去取值
console.log(obj1['a']);
// 取值:通過點語法獲取屬性的值
console.log(obj1.c);

// 修改
obj1['a'] = 100;
obj1.c = '你好';
console.log(obj1);

// 增加: 給不存在的key或者屬性去賦值
obj1['d'] = 1001;
console.log(obj1);
obj1.e = 'aaaa';
console.log(obj1);

// 刪除指定的鍵值對/屬性
delete obj1.b;
delete obj1['a'];
console.log(obj1);
// 聲明對象的時候,屬性名可以不用加引號
var obj2 = {name:'yuting', age:18, sex:'女'};
console.log(obj2['name']);
console.log(obj2.name);
==================================================================================================

三、運算符

JS中運算符包括:算術運算符、比較運算符、邏輯運算符、賦值運算符

1.算術運算符(+,-,*,/, %, ++, --)

a. 任何數(shù)據(jù)和字符串相加,結(jié)果都是字符串拼接的操作

var str1 = 'aaa'+[1,2,3,4];
console.log(str1);

b.兩個數(shù)組相加,并不是數(shù)組元素的拼接。而是將數(shù)組轉(zhuǎn)換成字符串,然后拼接成一個新的字符串

var arr1 = [1,2,3] + [4,5,6];
console.log([1,2,3])
console.log(arr1);

c.*操作只能作用于兩個數(shù)字類型

var str2 = 'abc'*2;
console.log(str2);

d.++:自加1操作

var num1 = 10;
var num11 = 10;
num1++;   //相當于: num1 += 1, num1 = num1+1
++num11
console.log(num1, num11);

e.--:自減1操作

var num2 = 10;
num2--;
console.log(num2);
2.比較運算符:>, <, >=, <=, == , !=, ===, !==

==和===的區(qū)別:
==是只要兩個數(shù)據(jù)的值相等,結(jié)果就是true,否則是false
===是只有兩個數(shù)據(jù)的值相等,并且數(shù)據(jù)類型也相等的時候,結(jié)果才是true,否則是false

console.log(5==5)    //true
console.log(5=='5')  //true

console.log(5!==5)   //false
console.log(5!=='5')  //true

console.log(12 > '16')  //字符串和數(shù)字之間比較大小,會把字符串轉(zhuǎn)換成數(shù)字  

注意:比較大小的時候,一般數(shù)字就和數(shù)字進行比較;字符串和字符串進行比較

3.邏輯運算符:&&(與),||(或),!(非)
console.log(true && true,true && false,false && false); //true false false
 console.log(true || true,true || false,false || false); //true, true, false
 console.log(!true, !false); //false, true
4.賦值運算符: =, +=, -=, *=, /=, %=

注意:賦值符號的左邊是變量

==============================================================================================

四、分支結(jié)構(gòu)

JS中的分之結(jié)構(gòu)有:if語句和switch語句兩種:

1.if語句
python:
if 條件:
    語句塊1
elif 條件:
    語句塊2
else:
    語句塊3
js:
if(條件){
    語句塊1
}
else if(條件){
    語句塊2
}
else{
    語句塊3
}
2.switch語句
switch(表達式){
case 值1:
    語句塊1;
case 值2:
    語句塊2;
...
defult:
    語句塊3;
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,557評論 0 13
  • 概要 64學時 3.5學分 章節(jié)安排 電子商務網(wǎng)站概況 HTML5+CSS3 JavaScript Node 電子...
    阿啊阿吖丁閱讀 9,851評論 0 3
  • HTML 5 HTML5概述 因特網(wǎng)上的信息是以網(wǎng)頁的形式展示給用戶的,因此網(wǎng)頁是網(wǎng)絡信息傳遞的載體。網(wǎng)頁文件是用...
    阿啊阿吖丁閱讀 4,951評論 0 0
  • 今天培訓了一整天,身體的疲憊是真的實打?qū)崳蔷翊_實一波波的興奮,一直難以平靜。 很是佩服我的領導們,要講一天,...
    夢游世界閱讀 157評論 0 0
  • 太氣人了! 還有一道最氣的: 誰能想到?。。〈鸢妇谷皇牵?/div>
    鄧平1閱讀 138評論 0 0

友情鏈接更多精彩內(nèi)容