JavaSkript(js奸商):
開(kāi)發(fā)環(huán)境: 記事本、IDE(集成開(kāi)發(fā)環(huán)境)
運(yùn)行環(huán)境:瀏覽器
script src='相對(duì)位置(01.js)' script? JavaSkript不能自結(jié)束
就算是不寫(xiě)任何東西也是不能自結(jié)束
若要再寫(xiě)內(nèi)容則需要重新再寫(xiě)一個(gè)script
JavaSkript作用
數(shù)據(jù)校驗(yàn)
網(wǎng)頁(yè)特效
數(shù)據(jù)交互(form表單? ajax)
alert 是一個(gè)windo對(duì)象的方法
alert=window.alert(兩種形式一樣都正確)
alert存在一個(gè)參數(shù) 這個(gè)參數(shù)是一個(gè)字符串
其作用就是一個(gè)警告框:將傳遞的第一個(gè)參數(shù)顯示到警告框中
每句后面加一個(gè)英文分號(hào)(加與不加都行,建議加上 寫(xiě)在一行也行 但是老師不讓?。。。。?/p>
多行注釋/*? */? ? 單行注釋是// //
文檔注釋/*! */ 防止注釋被壓掉
確定框:confirm
confirm (window.confirm)有個(gè)返回值要用變量接收,注意:變量前必須加var
返回值是true或者false 注意:都是小寫(xiě)
人機(jī)交互的窗口:window.prompt()
主要是用來(lái)測(cè)試代碼 也有返回值?
有兩個(gè)參數(shù):1提示用戶,是字符串;第二個(gè)參數(shù):默認(rèn)值,也是一個(gè)參數(shù) 會(huì)默認(rèn)輸入一個(gè)默認(rèn)值
若是點(diǎn)擊了取消則會(huì)返回null
字符串轉(zhuǎn)整數(shù):temp1=parseInt(temp2)
字符串轉(zhuǎn)小數(shù):temp1=parseInt(temp2)
若是開(kāi)頭就無(wú)法轉(zhuǎn)換,則返回NaN(not a number)不是一個(gè)數(shù)字
document.write("在頁(yè)面寫(xiě)內(nèi)容")
變量的定義:。。。。。。
1、var變量名稱=變量值//變量名稱 = 變量值
變量的定義方法:
1線生命,再賦值:var變量名稱
變量名稱=變量值
2變量初始化:var 變量名稱=變量值
==========================================================================================
python存在哪些數(shù)據(jù)類型:
基本數(shù)據(jù)類型: 字符串 數(shù)字 布爾(none不是一個(gè)數(shù)據(jù)類型 但是沒(méi)有官方認(rèn)證)
引用數(shù)據(jù)類型:object
JavaScrit的數(shù)據(jù)類型:
基本數(shù)據(jù)類型:字符串(String) 數(shù)字(Number)int float 布爾(Boolean或者Bool)null空引用 undefined NaN(not a number)
引用數(shù)據(jù)類型:object 萬(wàn)物皆對(duì)象
============================================================================================================================
Javascript的常見(jiàn)運(yùn)算符:
1、算數(shù)運(yùn)算符:+ - * / %(取余)
2、邏輯運(yùn)算符:&&(與一個(gè)&也行) ||(或一個(gè)|也行 但是會(huì)發(fā)生只判斷第一個(gè)條件 若第一個(gè)條件成立則后面條件不進(jìn)行判斷)? !(非)
3、關(guān)系運(yùn)算符:大于> 小于< 小于等于<= 大于等于>= 不等于!=
等于等于==(類型可以不一樣 但是值相等 只判斷值)? ? 等于等等于===(表示全相等 類型一樣 值也相等)
自加自減運(yùn)算符 i++/++1表示自身累加1? i--/--i表示自身累減
自加運(yùn)算 不管前++還是后++,對(duì)應(yīng)變量本身就是加1運(yùn)算? 區(qū)別在于:前++優(yōu)先級(jí)別特別高僅次于(),后++優(yōu)先級(jí)別特別低? 低于賦值運(yùn)算
自減運(yùn)算 不管前--還是后--,對(duì)應(yīng)變量本身就是減1運(yùn)算
計(jì)算機(jī)之父 圖靈
三大流程是由 馮諾依曼提出
馮諾依曼:? 計(jì)算機(jī)五大部件:輸入 輸出 控制 存儲(chǔ) 運(yùn)算
三大流程:
順序:自左而右,自上而下執(zhí)行
分支(選擇):
①單分支:
if(條件condition){
條件滿足需要執(zhí)行的代碼
}
②雙分支:
if(條件condition){
條件滿足需要執(zhí)行的代碼
}else(condition){
? 條件不滿足,則執(zhí)行的代碼
}
③多分支:
if(條件condition){
條件滿足需要執(zhí)行的代碼
}
else if(condition1){
? 不滿足前面的條件條件滿足,則執(zhí)行的代碼
}
else if(condition2){
? 不滿足前面的條件條件滿足,則執(zhí)行的代碼
}
else if(condition3){
? 不滿足前面的條件條件滿足,則執(zhí)行的代碼
}
else (condition4){
不滿足前面的條件條件都不滿足,則執(zhí)行此處代碼
}
============================================================
===================================================
內(nèi)置對(duì)象:
String:構(gòu)造新的String函數(shù) var str1=new String(")new可以省略
查詢字符:str.indexOf查詢索引位置 若是不存在則返回-1,若字符數(shù)大于1則會(huì)返回第一個(gè)字符的索引
str.lastIndexOf表示返回最后一個(gè)元素的索引
str.charAt通過(guò)索引位置查詢字符 str.charCodeAt返回指定位置字符的ASCII值
截取字符段str.substr(x,y)表示切掉從x(索引)開(kāi)始 長(zhǎng)度為5的字符串
? str.substring(x,y)表示切掉從x(索引)開(kāi)始 到5結(jié)束的字符串
? str.substr(x)? str.substring(x)后一個(gè)參數(shù)不寫(xiě)表示從x開(kāi)始 截取到最后一位
? str.lenth獲得字符串的長(zhǎng)度
全部小寫(xiě)str.toLowCade()
全部大寫(xiě)str.toUpperCade()
數(shù)組.join("連接符")將數(shù)組用“連接符”連接起來(lái)
Math:
自然數(shù)常量Math.E? 圓周率Math.PI? ? 冪次Math.pow? ? 向上取整Math.ceil? 向下取整Math.floor?
平方根Math.sqrt(常數(shù))? 絕對(duì)值Math.abs(常數(shù)) (python中是 math.fabs())
四舍五入:python中的round(在python中是五舍六入)是小數(shù)位大于5才能向上取整
J S中round是真正意義上的四舍五入
隨機(jī)數(shù):Math.random(隨機(jī)產(chǎn)生0-1的小數(shù)【前閉后開(kāi)的區(qū)間】)
隨機(jī)整數(shù)(1-10):Math.floor(Math.random()*10)
獲取區(qū)間范圍(min,max):
function randInt(min,max){
return min+Math.floor(Math.random()*(max+1-min));
}
python中隨機(jī)(0-1)小數(shù):random.random()
三角函數(shù):
? Math.sin()/cos/tan Math.asin/acos/atan()(反函數(shù)的返回值)
? Math.atan2(x,y)返回x軸到點(diǎn)(x,y)的角度
Date:
var myDate = new Date();
console.log/info(new Date())獲取的是當(dāng)前當(dāng)?shù)貢r(shí)區(qū)的時(shí)間
獲得當(dāng)前年份:
var year = myDate.getFullYear();
var month = myDate.getMonth()+1;(注意獲得的是0-11不是1--12)
var day = myDate.getDate();
var week = myDate.getDay();
var hours = myDate.getHours();
var mins = myDate.getminetes();
var seconds = myDate.getSeconds();
var ms(毫秒) = myDate.getMilliseconds();
document.write("當(dāng)前時(shí)間"+year+"年"+month+"月"+day+"日"+
hours+"時(shí)"+mins+"分"+seconds+"秒")
定義函數(shù):
setTimeout(這是個(gè)匿名函數(shù))(function(){
console.log(XXXXX)
},time(毫秒))表示time時(shí)間后會(huì)運(yùn)行console.log(XXXXX)
function test(){
console.log(XXXXX)
}
setTimeout(test后不要加括號(hào),time)
重復(fù)執(zhí)行:
setInterval(function(){
console.info(XXXXX)
},2000)表示每2秒執(zhí)行一次(程序執(zhí)行后不會(huì)立即執(zhí)行,
那么在此函數(shù)前先行調(diào)用一次console即可)
秒表:將上面的時(shí)間設(shè)置成1就是秒表
倒計(jì)時(shí)
var graduateTime = new Date("YYYY-MM-DD HH:mm:SS")時(shí)間戳(單位是毫秒)
var currentTime = new Date()
var times = var graduateTime - var currentTime
數(shù)組:就是大量數(shù)據(jù)的集合
構(gòu)造新函數(shù): var arr = new Array();括號(hào)內(nèi)加一個(gè)數(shù)字說(shuō)明
是直接構(gòu)造一個(gè)擁有該數(shù)字個(gè)數(shù)的數(shù)組;
后面也可以直接跟一個(gè)數(shù)組 不加該數(shù)組不用括號(hào):
var arr = new Array(1,2,3,4,5,6)
遍歷數(shù)組:var arr = [1,5,5,3,4,89,3,8];
for (var i =0;i < arr.lenth;++i){
console.info(arr[i])
}
修改x索引的值 :arr[x] = X 相當(dāng)于替換;
為數(shù)組末尾增加一個(gè)元素:arr.push();
為數(shù)組首位增加一個(gè)元素:arr.unshift();
為數(shù)組首位刪除一個(gè)元素:arr.shift();
為數(shù)組末尾刪除一個(gè)元素:arr.pop();
連接多個(gè)數(shù)組:arr.concat(arr1);
把數(shù)組的所有元素 放入一個(gè)字符串 ,元素通過(guò)制定的分隔符進(jìn)行分割:
arr.join("分隔符")
數(shù)組反轉(zhuǎn):arr.reverse()
var arr=[1,2,3,4,5];
arr.reverse()
console.log(arr)
結(jié)果為[5,4,3,2,1]
數(shù)組排序: var arr=[1,3,5,8,4];
arr.sort()
consol.log(arr)
結(jié)果為[1,3,4,5,8]
注意:與python不同 JS排序是按照數(shù)字的第一位進(jìn)行排序;
例如:var arr=[1,21,13,44,5];
arr.sort()
consol.log(arr)
結(jié)果為[1,13,21,44,5]若要進(jìn)行多位排序則需要加回調(diào)函數(shù)
var arr=[1,21,13,44,5];
arr.sort(function(x,y)){
return x-y;
}
console.log(arr)
for(var i = 0;i < arr.lenth;++i)(
console.log(arr[i]))
插入一個(gè)或者刪除某幾個(gè)元素:
刪除:
var arr=[1,2,3,4,5];
? ? ? ? ? ? arr.splice(2,2)
? ? ? ? ? ? console.log(arr)刪除從索引2開(kāi)始的2個(gè)元素
注意:(第一個(gè)參數(shù)是索引位置,
第二個(gè)是要?jiǎng)h除元素的個(gè)數(shù)【如果此數(shù)字超過(guò)數(shù)組長(zhǎng)度,則表示全刪除】,
第三個(gè)參數(shù)位置是要增加的元素,表示在刪除索引位置的元素
的同時(shí)增加的元素(可以是多個(gè)))
插入:
var arr=[1,2,3,4,5];
? ? ? ? ? ? arr.splice(2,0,X)在索引2之前插入一個(gè)X值
? ? ? ? ? ? console.log(arr)
循環(huán):