JavaScript一種直譯式腳本語(yǔ)言,是一種動(dòng)態(tài)類型、弱類型、基于原型的語(yǔ)言,內(nèi)置支持類型。它的解釋器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用于客戶端的腳本語(yǔ)言,最早是在HTML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的一個(gè)應(yīng)用)網(wǎng)頁(yè)上使用,用來(lái)給HTML網(wǎng)頁(yè)增加動(dòng)態(tài)功能。
在1995年時(shí),由Netscape公司的Brendan Eich,在網(wǎng)景導(dǎo)航者瀏覽器上首次設(shè)計(jì)實(shí)現(xiàn)而成。因?yàn)镹etscape與Sun合作,Netscape管理層希望它外觀看起來(lái)像Java,因此取名為JavaScript。但實(shí)際上它的語(yǔ)法風(fēng)格與Self及Scheme較為接近。
為了取得技術(shù)優(yōu)勢(shì),微軟推出了JScript,CEnvi推出ScriptEase,與JavaScript同樣可在瀏覽器上運(yùn)行。為了統(tǒng)一規(guī)格,因?yàn)镴avaScript兼容于ECMA標(biāo)準(zhǔn),因此也稱為ECMAScript。
javascript基本特點(diǎn)
JavaScript是一種屬于網(wǎng)絡(luò)的腳本語(yǔ)言,已經(jīng)被廣泛用于Web應(yīng)用開(kāi)發(fā),常用來(lái)為網(wǎng)頁(yè)添加各式各樣的動(dòng)態(tài)功能,為用戶提供更流暢美觀的瀏覽效果。通常JavaScript腳本是通過(guò)嵌入在HTML中來(lái)實(shí)現(xiàn)自身的功能的。
是一種解釋性腳本語(yǔ)言(代碼不進(jìn)行預(yù)編譯)。
主要用來(lái)向HTML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的一個(gè)應(yīng)用)頁(yè)面添加交互行為。
可以直接嵌入HTML頁(yè)面,但寫(xiě)成單獨(dú)的js文件有利于結(jié)構(gòu)和行為的分離。
跨平臺(tái)特性,在絕大多數(shù)瀏覽器的支持下,可以在多種平臺(tái)下運(yùn)行(如Windows、Linux、Mac、Android、iOS等)。
Javascript腳本語(yǔ)言同其他語(yǔ)言一樣,有它自身的基本數(shù)據(jù)類型,表達(dá)式和算術(shù)運(yùn)算符及程序的基本程序框架。Javascript提供了四種基本的數(shù)據(jù)類型和兩種特殊數(shù)據(jù)類型用來(lái)處理數(shù)據(jù)和文字。而變量提供存放信息的地方,表達(dá)式則可以完成較復(fù)雜的信息處理。
javascript的基礎(chǔ)知識(shí)
1、javaScript的概念:是一種表述語(yǔ)言,也是一種基于對(duì)象(Object)和事件驅(qū)動(dòng)(EventDriven)的,安全性好的腳本語(yǔ)言,運(yùn)行在客戶端,從而減輕服務(wù)器端的負(fù)擔(dān),總結(jié)如下:
1.javaScript主要用來(lái)向HTML頁(yè)面找那個(gè)添加交互行為。
2.javaScript是一種腳本語(yǔ)言,語(yǔ)法和java類似。
3.javaScript一般用來(lái)編寫(xiě)客戶端腳本。
4.javaScript是一種解釋性語(yǔ)言,邊執(zhí)行邊解釋。
2、javaScript由核心語(yǔ)法ECMAScript、瀏覽器對(duì)象模型(BOM) 主要用于管理窗口與窗口之間的通訊,因此其核心對(duì)象是window、文檔對(duì)象模型(DOM)三部分組成。
3、網(wǎng)頁(yè)中引入javaScript三種方式:
1.使用《Script》《/Script》標(biāo)簽內(nèi)部樣式
2.使用外部js文件
3.直接在HTML標(biāo)簽中的行內(nèi)樣式。
4.javaScript的作用
1.實(shí)現(xiàn)頁(yè)面表單驗(yàn)證
2.實(shí)現(xiàn)頁(yè)面交互特效
5.javaScript的特點(diǎn)
1.被設(shè)計(jì)用來(lái)向Html頁(yè)面添加交互行為
2.是一種英特網(wǎng)上最流行的腳本語(yǔ)言
3.一般用于編寫(xiě)客戶端腳本
4.是一種解釋性語(yǔ)言
6.引入javaScript的方式
1.使用《Script》標(biāo)簽直接嵌入網(wǎng)頁(yè)
2.使用外部js文件
Js中String對(duì)象常用的方法:
toString(包前不包后),2.toLowerCase();toUpperCase();
charAt(index);返回在指定位置的字符,indexOf(str,index);指定字符串中首次出現(xiàn)的位置;split(str);將字符串分割為字符串?dāng)?shù)組
在javaScript中條件語(yǔ)句Switch(){}可以接字符串;
alert(“提示信息”);
var isOk=confirm(“確認(rèn)框“);//如果確認(rèn)返回true,否則返回false
prompt();prompt(“提示信息”,“輸入框默認(rèn)信息”);
prompt(“請(qǐng)輸入姓名”)
close();
open();
setTimeout();在指定毫秒之后調(diào)用某個(gè)函數(shù)
setInterval();在指定周期毫秒來(lái)調(diào)用某個(gè)函數(shù)
window.open();
7.Js語(yǔ)法:
1.區(qū)分大小寫(xiě)
2.注意變量,函數(shù)等命名規(guī)范
3.每行代碼以分號(hào)結(jié)束
Js中的函數(shù):
1.系統(tǒng)函數(shù)
ParseInt();轉(zhuǎn)換為整數(shù) 45.9a轉(zhuǎn)換為45;a6轉(zhuǎn)換返回為NaN(Not a Number)
isNaN(判斷是不是數(shù)字)
typeof(var);判斷是什么數(shù)據(jù)類型
eval(“5+2”);計(jì)算表達(dá)式值
2.自定義函數(shù)
Function 函數(shù)名(){javaScript代碼}
Function 函數(shù)名(參數(shù)1,參數(shù)2){javaScript代碼 return 返回值(可選)}
Js中函數(shù)的調(diào)用:
事件名=“函數(shù)名(傳遞的參數(shù)值)“;
函數(shù)名(傳遞的參數(shù)值);
匿名函數(shù):
匿名函數(shù)的聲明:
Var 變量名=function(參數(shù)){ 函數(shù)體 return 返回值;} ;
調(diào)用
變量名(參數(shù))
8.程序調(diào)用
1.添加alert();方法 2.使用fireBug();方法
9.BOM概述:(Browser Object Model,瀏覽器對(duì)象模型)
1.window對(duì)象的屬性
Weindow對(duì)象常用的方法:prompt()confirm();setTimeout();setInterval();
Window對(duì)象常用的事件:onload=”” onmouseover=””;onclick
window.parent.location
2.History對(duì)象
方法:back() ;forward();go();
3.Location對(duì)象提供當(dāng)前頁(yè)面的URL
屬性:host hostname href
方法:reload() replace();
4.Document對(duì)象
屬性:referrer屬性判斷是不是通過(guò)超鏈接訪問(wèn)的,不是返回null
10.javaScript中的對(duì)象,
Date對(duì)象:
創(chuàng)建date對(duì)象發(fā)方法var date=new Date(MM DD ,YYYY,hh:mm:ss);
var date=new Date(); date.getDay();
Math對(duì)象:
Ceil();對(duì)數(shù)進(jìn)行向上取整,ceil(25.5)=26;
Floor();向下取整,floor(25.5)=25;
Math.round(25.5);在原數(shù)的加0.5后向下取整
11.Dom概述(文檔對(duì)象模型)
由CoreDom,XMLDom,HTML Dom組成;
12.創(chuàng)建數(shù)組
Js中變量的聲明:
Var 數(shù)組名稱=new Array(size);
先聲明再賦值 fruit[0]=””
聲明同時(shí)賦值 var fruit=new Array(“apple”,”orange”);或 var fruit=new Array[“apple”,”orange”];
讀取1.使用for循環(huán)讀取 2.使用for---in讀取
For(var x in fruit){document.write(fruit[x]+”《br/》”)}x為下標(biāo)
Fruit.sort();//排序 string str=fruit.join(“-”);//添加字符串后連接成一個(gè)字符串
下拉列表Select對(duì)象:
13、 style 定位方面的樣式
left top position z-index
鼠標(biāo)滾動(dòng)距離:scorllTop:縱向距離
scorllLeft:橫向距離
鼠標(biāo)滾動(dòng)事假:onscorll
Jquery對(duì)象與Dom對(duì)象的相互轉(zhuǎn)換
jquery對(duì)象轉(zhuǎn)換為DOMD對(duì)象,jquery提供兩種方法將jquery對(duì)象轉(zhuǎn)換為DOM對(duì)象,即[index]和get(index),
var $txtName=$(“#txtName”);//jquery對(duì)象
var txtName=$txtName[0];//Dom對(duì)象
alert(txtName.checked);//檢測(cè)這個(gè)checkbox是否被選中
通過(guò)get(index)方法得到對(duì)應(yīng)的Dom對(duì)象
Var $txtName=$(“#txtName”);//jquery對(duì)象
Var txtName=$txtName.get(0);//Dom對(duì)象
alert(txtName.checked);//檢測(cè)這個(gè)checkbox是否被選中
Dom對(duì)象轉(zhuǎn)換為jQuery對(duì)象
Var txtName=document.getElementById(“txtName”);//dom對(duì)象
Var $txtName=$(txtName);//
Dom中添加class屬性使用obj.className=classname;
添加類容使用obj.innerHtml=《input /》
Jquery中添加class屬性使用obj.addClaa=classname;
添加類容使用:obj.html=《input/》;
Jqurey中的五大選擇器:
基本選擇器 (# 。 標(biāo)簽)
層次選擇器(后代 》子 +相鄰 ~同輩)
屬性選擇器(P[class=name])
過(guò)濾選擇器(“tr:even”)
可見(jiàn)性選擇器(“p:hidden” “p:viside”)
Jquery中的事件:
Obj.bind(“clike”,function(){});
obj.bind({mousever:function(){},{mouserout:function(){}}});
obj.unbind();
obj.hover(function(){},function(){})方法集合onmouseOver和onmouseOut
obj.toggle();
$(“.tipsbox”).show();obj.hide();
$(“img”).fadeIn(1000);
$(“.txt”).slideUp(1000); obj.slideDown(1000);
Obj.toggleClass(“class”);//集成了addClass和romoveClass
$(this).val(“”);//清空文本內(nèi)容
Var $newNode=$(《”《li》用jquery創(chuàng)建新元素節(jié)點(diǎn)《/li》”》);
在正則表達(dá)式
JS中常用的一些小技巧:
1.使用??!操作符轉(zhuǎn)換布爾值,對(duì)于變量可以使用??!varable做檢測(cè),只要變量的值為:0,null , “” , undefind或者NaN都將返回的是false反之的是true
function Account(cash)
{
this.cash = cash;
this.hasMoney = ?。?cash;
}
2.使用+將字符串轉(zhuǎn)換為數(shù)字,只適用字符串?dāng)?shù)據(jù),否則返回NaN
function toNumber(strNum) {
return +strNum;
}
適用于Date()返回時(shí)間戳數(shù)字:+new Date();
3.在循環(huán)很大時(shí)候數(shù)字的長(zhǎng)度先給去出來(lái),var legth = array.legth;
4.if(‘querySelector’ in document) {
document.querySelector(“#id”);
} else {
document.getElementById(“id”);
}
5.獲取數(shù)組中的最后一個(gè)元素
var array = [1,2,3,4,5];
array.slice(-1);
6.字符串元素的替換
var string = “john john”;
string.replace(/hn/, “ana”); //“joana john”
string.replace(/hn/g, “ana”); //“joana joana”
評(píng)論
查看更多