2.程式設計基礎
2.1常規資料型別與變數
電腦程式就是去處理現實生活中
資料的幾個屬性:名稱、值、型別
alert()警告提示框(列印)
typeof()資料的型別
字串 string
數值 number
布林型別 boolean
生活中是存在不同的資料型別的,計算機要解決生活問題,那麼他就和生活的資料型別產生了對映,所以就有了資料型別。
變數 十進位制23,3.14
八進位制 023(19)
十六進製制 0x23(35)
科學計數法 3e2(3x102)
為什麼要有變數
因為生活中一些資料不會一成不變的,他們的值會改變,所以js裡面有了變數和他相呼應。
變數:var variable 的縮寫變數的意思。 宣告乙個變數。
變數名name 變數名
可以有字母、數字、
1、命名的規則:關鍵字不能用、
作業:總結一下js裡面的關鍵字
var var=("楊文生");
2、一般情況下,只用英文開頭 也可以死使用$和_但是不建議使用
不能用數字開頭因為和8進製 16進製制會產生衝突。
var 0name="楊文生";
命名的原則:
見名思義
規範:(1)盡量使用英文單詞或組合,,或者專業名詞
weight color
filename(駝峰命名法)
(2)盡量不要使用拼音
變數的值:
變數的型別是由變數的值來決定的。
js是弱型別語言,所有的型別的變數都用var來宣告。
js是動態型別的語言,變數的型別會根據值得變化而變化,不會出錯。
用本質來解釋weight=weight-5
把名字為weight的記憶體單元中的值65拿出來,之後和5做減法運算,然後把得到的結果再放回到名字為weight的記憶體單元中。
js語言特點:
更加高階,不嚴謹。
變數不宣告就可以使用。
使用嚴謹的格式,就必須先定義變數才能使用變數。
name這個名字是特殊的,使用name來給變數起名字時,他不會報錯
如果是布林型別就分配乙個位元組的大小來儲存。
如果是數字和字串,那麼根據他的大小和長度來分配位元組數來儲存
2.2物件型別
物件在js當中對應的是object
定義乙個物件
var dog =;
使用new object()定義乙個物件型別的變數
var dog =new object();
dog.name="藏葬";
dog.age=3;
dog.marry=false;
為什麼有物件
和為什麼有資料型別一樣
就是生活中處處都有物件,所以js中有這種物件型別。
如何使用物件裡面的屬性?
使用物件名+「.」+物件屬性名
alert(typeof (dog.name));
2.3算數運算子與表示式
常見的算術運算子有 + - ×÷
對應的js當中的運算子為+ - * /
加法運算:
var weight=65;
weight =weight+10;
alert(weight);
字串拼接
var dogname="zhangsan";
dogname=dogname+"feng";
alert(weight);
取餘運算子在js當中用 % 表示 作用:得到兩個數的餘數
var num1 =10;
var num2 =3;
var result =num1%num2;
alert(result);
使用技巧:可以解決週期性問題
++自增1
本身是可以不存在,使用基本運算就能代替。他存在的唯一價值就是簡便,快捷
num++ 和++num的區別
num++ 是先用再加
++num 是先加再用
++num
var num1;
num1=num1+1;
2.4賦值運算子與表示式
將乙個資料賦值給乙個變數
var num=10;
復合賦值運算子
+=
num=nmu+1;
num+=1;
+=可以不存在,完全由普通運算取代,存在的唯一價值就是簡潔方式。 %=
注:如果不理解這個復合賦值運算子,那麼就不要用,直接用普通運算子。
課下練習
-= *=
/=
2.5關係運算子與表示式
生活中常見的關係運算子
大於 小於 等於 大於等於 小於等於 不等於
> < = >= <= !=
判斷兩個數是否相等 使用兩個=號。 與生活中常識不符合,
如何避免判斷兩個數相等時出錯。就是把常量放在等式的前面
那常量放在等式的後面。
絕對相等
變數的值和型別都相等, 使用 ===來表示
絕對不等於
變數的值和型別都不相等,使用!==來表示
絕對不等
var num1 =2;
var str ="2";
alert(num1 !==str);
對比不相等
var num1 =2;
var str ="2";
alert(num1 !=str);
2.6邏輯運算子與表示式 與
兩者同時成立結果才成立
第乙個關係是true 第二個關係也是true那麼滿足才是true
如果有乙個或多個false時 結果為false
在js當中用&& 表示
var num1=10;
var num2=20;
alert(num1>20 && num2>10);
或至少有乙個成立那麼結果成立
就是乙個關係為true那麼結果就是true
在js中用||來表示
var num1 =10;
var num2 =20;
alert(num1>20||num2>10)
非 結果為原身的對立面,就是當關係成立時,非之後就變為不成立。
非true 之後結果為false
在js當中用!表示
var num=10;
alert(!(num>10));
2.7位運算子
如何得到乙個數的二進位制。
var num=5;
alert(num.tostring(2));
同理得到乙個數其他進製數、改變.tostring裡面的值
首先要轉換為二進位制數
運算法則,只要兩者同時為1時結果為1其餘結果均為0
按位運算,不足的在二進位制前補0。例如:計算5和6的與運算
5: 101
6: 110
結果:100
varnum1 = 5;
varnum2 = 6;
alert((num1&num2).tostring(2));
或 兩個數有乙個為1那麼結果就為1然後按位運算
varnum1 = 5;
varnum2 = 6;
//101
//110
//111
alert(num1.tostring(2) | num2.tostring(2));
異或 兩個值相同時結果為0 兩個值不同時結果為1
varnum1 = 5;
varnum2 = 6;
//101
//110
//011
alert(num1.tostring(2) ^ num2.tostring(2));
按位與運算的作用:
(1)測試某一位是0還是1;
1100010000101011
0000000000001000
(2)設定某些位為0
1100010000101011
1111111111110111
x&1 = x (x表示一位二進位制,可能是0或者1)
x&0 = 0
按位或運算的作用:設定某些位為1
1100010000101011
0000000000010000
x|0 = x
x|1 = 1
異或運算的作用
x^1 = x(反)
x^0 = x
js基礎程式設計之for迴圈
在控制台列印三角形 var str for j 0 j 10 j str n console.log str 結果如下 案例二 在控制台列印三角形 var str for i 0 i 10 i str n console.log str 結果 結果如下 案例三 列印乘法表 實現九九乘法表 var s...
js物件基礎知識和程式設計
js物件是一組沒有特定順序的值 基本值 函式 物件 便於理解的方式 var person new object person.name tom person.age 29 person.sayname function 物件字面量方式 可作為常用方式 var person ecmascript有兩種...
《JS高階程式設計》PART6 DOM基礎
1.使用document處理html節點 hello 假如op包含指向這個元素的乙個引用,則可以這樣訪問到id屬性的值 var sid op.attributes.getnameditem id nodevalue or 更簡單 var sid op.getattribute id 對應的setat...