js最基本的三種輸出方式:
console.log('hello world');
控制臺(tái)輸出hello world
document.write('hello world');
頁面打印出hello world
alert('hello world');
頁面彈出helllo world
變量的聲明:
var uname;聲明一個(gè)變量
uname='張三';給變量賦值
上面的兩部可以簡(jiǎn)寫為
var uname='張三';
在控制臺(tái)出輸出變量uname
console.log(uname);正確
console.log('uname');錯(cuò)誤鞠绰。這樣輸出的是uname這串字,輸出一個(gè)變量不需要加引號(hào)
聲明變量與未聲明變量:
1.聲明變量不賦值,返回undefined
var uname
console.log(uname);
2.直接輸出未聲明的變量,會(huì)報(bào)錯(cuò)
console.log(upwd);
變量的命名規(guī)范:
變量名可以包含數(shù)字字母和下劃線$
但不可以以數(shù)字和特殊符號(hào)開頭
var name='張三';正確
var name1='張三';正確
var name_1='張三';正確
var $name='張三';正確
var 1name='張三';錯(cuò)誤
var +name='張三';錯(cuò)誤
var *name='張三';錯(cuò)誤
變量的賦值:
var uname='張三';
var uname='李四';
console.log(uname);
console.log(typeof uname);
常量一旦聲明就不可以被改變
const PI=3.15;
const PI=3.14;
console.log(PI);
一智嚷、隱式轉(zhuǎn)換結(jié)論
1治笨、數(shù)字 + 字符串 :將數(shù)字轉(zhuǎn)換為字符串
2、數(shù)字 + boolean :將 boolean 轉(zhuǎn)換為 number類型
3窜觉、數(shù)字 + undefined :結(jié)果為 NaN脱茉,NaN的類型為 number
4非驮、字符串 + boolean :將boolean 轉(zhuǎn)換為 字符串
5胸懈、boolean + boolean :都轉(zhuǎn)換成number在做相加運(yùn)算
注:NaN:not a number? 判斷一個(gè)非數(shù)字? ? 如果不是一個(gè)數(shù)字返回true担扑,如果是一個(gè)數(shù)字返回false
案例:var str="hello world";
var str1=isNaN(str);
console.log(str1);
二、顯示轉(zhuǎn)換/強(qiáng)制轉(zhuǎn)換
1.toString()? 將任意類型轉(zhuǎn)換為字符串類型
var? num=5;
var str=num.toString();
console.log(typeof str);
2.parseInt(); 將一個(gè)數(shù)據(jù)轉(zhuǎn)換為整數(shù)
var? num=5.5;
var str=parseInt(num);
console.log(str);5
console.log(typeof str);number
3.parseFloat()? 將一個(gè)數(shù)據(jù)轉(zhuǎn)換為小數(shù)?
var? num=.5;
var str=parseFloat(num);
console.log(typeof str);0.5
console.log(typeof str);number
4.Number? 將一個(gè)數(shù)據(jù)轉(zhuǎn)換為number類型
var str="35.5你好";
var str1=Number(str);
console.log(str);
三趣钱、運(yùn)算符和表達(dá)式
1.算數(shù)運(yùn)算符
+,-,*,/,%
%也叫模
10 % 3 : 1
10.5 % 3 :1.5
++,-- 運(yùn)算符涌献,單目運(yùn)算符
++:自增運(yùn)算,增量為1
var i=5;
i++;i=i+1;
++i;i=i+1;
++在前:a自身先自加1,再把新得的值給b
var a=3;
var b=++a
document.write(a);
document.write(b);
++在后:先把a(bǔ)的值給b首有,再自身加1
var a=3;
var b=a++;
document.write(a);
document.write(b)
--:自減運(yùn)算,減量為1
--在前:a自身先自減1燕垃,再把新得的值給b
var a=3;
var b=--a
document.write(a);
document.write(b);
--在后:先把a(bǔ)的值給b枢劝,再自身減1
var a=3;
var b=a--;
document.write(a);
document.write(b)
四舍五入:toFixed(保留位數(shù));
語法:數(shù)字.toFixed(n);
由算術(shù)運(yùn)算符所組成的表達(dá)式,稱之為算術(shù)表達(dá)式
var a;
var b;
var c = a + b; //算術(shù)表達(dá)式卜壕,賦值表達(dá)式
2呈野、關(guān)系運(yùn)算符
1、作用
判斷數(shù)據(jù)之間的大小或相等關(guān)系
2印叁、關(guān)系運(yùn)算符
>,<,>=,<=,==,!=
由關(guān)系運(yùn)算符所組成的表達(dá)式稱之為關(guān)系表達(dá)式,關(guān)系表達(dá)式的值為boolean類型
==军掂,!= : 只判斷數(shù)值是否相等轮蜕,與類型無關(guān)
全等:===
類型相同
數(shù)值相同
不全等:!==
3、邏輯運(yùn)算符
1蝗锥、作用
判斷多條件以及條件取反時(shí)使用
2跃洛、語法
1、邏輯 非
對(duì)現(xiàn)有條件取反
語法:!
2终议、邏輯 與
兩個(gè)條件汇竭,兩條件同時(shí)為真時(shí),&& 表達(dá)式才為真穴张。
語法:&&
ex:
考試通過條件:
1细燎、機(jī)試 >= 60分
2、筆試 >= 60分
3皂甘、邏輯 或
兩個(gè)條件玻驻,只要有一個(gè)為真時(shí),表達(dá)式即為真
語法:||
3偿枕、運(yùn)算結(jié)果
true && true : true
true && false : false
false && true : false
false && false :false
true || true : true
true || false :true
false || true : true
false || false :false
與(和璧瞬,且)&&
或? ? ? ||
非? ? ? 取反? ? !
有假且(&&)為假渐夸,有真或(||)為真嗤锉。
var a=Number(prompt('請(qǐng)輸入第一個(gè)數(shù)'));
var b=(prompt('請(qǐng)輸入第二個(gè)數(shù)'));
alert(a+b);
4.條件運(yùn)算符(三目運(yùn)算符)
1、語法
? :
表達(dá)式1?表達(dá)式2:表達(dá)式3;
表達(dá)式1墓塌,值應(yīng)該為 boolean 類型
如果表達(dá)式1的值為true瘟忱,那么表達(dá)式2的值則作為整個(gè)表達(dá)式的值
如果表達(dá)式1的值為false,那么表達(dá)式3的值則作為整個(gè)表達(dá)式的值
ex :輸入考試成績(jī)桃纯,如果成績(jī)大于等于60 酷誓,則輸出及格,否則輸出 不及格
一:運(yùn)算符和表達(dá)式
1.三目運(yùn)算符(三元運(yùn)算符)
表達(dá)式1?:表達(dá)式2:表達(dá)式3态坦;
表達(dá)式1的值應(yīng)該為boolean類型的值
如果表達(dá)式1的值為true,那么表達(dá)式2作為整個(gè)表達(dá)式的結(jié)果
如果表達(dá)式1的值為false,那么表達(dá)式3做為整個(gè)表達(dá)式的結(jié)果
一盐数、流程控制語句
1.?
if(條件){
要執(zhí)行的語句
}
2.
if(條件){
條件為true時(shí)執(zhí)行的語句
}else{
條件不為true時(shí)執(zhí)行的語句
}
3.多重條件語句
else if(){
}
4.switch .....case
switch(表達(dá)式/變量){
case 情況1:
要執(zhí)行的語句;
break;
case 情況2:
要執(zhí)行的語句伞梯;
break;
case 情況3:
要執(zhí)行的語句玫氢;
break;
default:以上任何一塊都沒匹配上的時(shí)候
要執(zhí)行的語句帚屉;
break;
}
練習(xí) :
星期一 : 麻辣小龍蝦
星期二 : 羊肉串
星期三 : 火鍋
星期四 : 四菜一湯
星期五 : 方便面
星期六 : 饅頭
星期日 : 水
var date = prompt('請(qǐng)輸入今天星期幾');
switch(date){
? ? ? ? ? ? case ' 星期一 ' :
? ? ? ? ? ? ? alert('麻辣小龍蝦')漾峡;
? ? ? ? ? ? ? ? break攻旦;
? ? ? ? ? ? case ' 星期二 ' :
? ? ? ? ? ? ? alert('羊肉串');
? ? ? ? ? ? ? ? break生逸;
? ? ? ? ? ? case ' 星期三 ' :
? ? ? ? ? ? ? alert('火鍋')牢屋;
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? case ' 星期四 ' :
? ? ? ? ? ? ? alert('四菜一湯')槽袄;
? ? ? ? ? ? ? ? break烙无;
? ? ? ? ? ? case ' 星期五 ' :
? ? ? ? ? ? ? alert('方便面');
? ? ? ? ? ? ? ? break遍尺;
? ? ? ? ? ? case ' 星期六 ' :
? ? ? ? ? ? ? alert('饅頭')截酷;
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? case ' 星期日 ' :
? ? ? ? ? ? ? alert('水')乾戏;
? ? ? ? ? ? ? ? break迂苛;
}
switch .....case直落形式
即不管是哪種情況都做相同的事
switch(){
case 情況1:
case 情況1:
case 情況1:
case 情況1:
case 情況1:
要執(zhí)行的語句
break;
練習(xí) :
var date = prompt('請(qǐng)輸入今天星期幾');
switch(date){
case ' 星期一 ' :
case ' 星期二 ' :
case ' 星期三 ' :
case ' 星期四 ' :
case ' 星期五 ' :
case ' 星期六 ' :
case ' 星期日 ' :
alert('羊肉串')鼓择;
break三幻;
}