Javascript中級(jí)語(yǔ)法快速入手
1. 談?wù)凧avascript的對(duì)象
Javascript作為一種弱語(yǔ)言類(lèi)型的語(yǔ)言,同時(shí)也是一種動(dòng)態(tài)類(lèi)型的語(yǔ)言。在使用Javascript的過(guò)程中,也常常需要用到Javascript的內(nèi)置對(duì)象以及自定義的對(duì)象。
1.1 如何創(chuàng)建對(duì)象
Javascript是一種弱語(yǔ)言類(lèi)型的語(yǔ)言,不必像Java、C#等高級(jí)語(yǔ)言那樣必須通過(guò)構(gòu)造函數(shù)的方法來(lái)創(chuàng)建對(duì)象,在Javascript中,主要有兩種創(chuàng)建對(duì)象的方法,一種是直接通過(guò)new關(guān)鍵字定義,一種是通過(guò)函數(shù)來(lái)定義。如下:
//第一種方式,直接通過(guò)new創(chuàng)建對(duì)象;
var demo = new Object();
demo.name = "Anderson";
demo.sex = "male";
demo.age = 23;
//第二種格式,直接實(shí)例化,基本上和Json語(yǔ)法是一致的,一般作為第一種方式的替代語(yǔ)法。
var demo = {name:"Anderson",sex:"male",age:25};
//第三種格式,通過(guò)構(gòu)造器來(lái)創(chuàng)建對(duì)象
function Demo(name,sex,age){
this.name = name;
this.sex = sex;
this.age = age;
}
var demo = new Demo("Andeson","male",25);
1.2 如何修改對(duì)象
Javascript和高級(jí)語(yǔ)言的對(duì)象語(yǔ)法是不一樣的,總的來(lái)說(shuō),其限制比較少,當(dāng)創(chuàng)建完對(duì)象后,可以對(duì)對(duì)象的屬性、方法等進(jìn)行動(dòng)態(tài)的修改,比如添加一個(gè)新的屬性,添加一個(gè)新的方法等。
var demo = {Name:"Anderson"};
demo.Sex = "male";
1.3 理解Javascript中的數(shù)字對(duì)象
在Javascript中,所有的數(shù)字都是64位,所有數(shù)字均由浮點(diǎn)類(lèi)型組成。Javascript中采用的是IEEE754標(biāo)準(zhǔn)定義的64位浮點(diǎn)數(shù)格式表示數(shù)字,它能表示最大值為±1.7976931348623157 x 10308,最小值為±5 x 10 -324。
var demo1 = 7; //十進(jìn)制表示法 var demo2 = 07; //八進(jìn)制表示法 var demo3 = 0x12; //十六進(jìn)制表示法 var demo4 = 12e12; //科學(xué)計(jì)數(shù)法表示法 var demo5 = 12e-12; //科學(xué)計(jì)數(shù)法表示法 var demo7 = 128; var demo8 = demo7.toString(16); //轉(zhuǎn)化為十六進(jìn)制 var demo9 = demo7.toString(8); //轉(zhuǎn)化為八進(jìn)制 var demo10= demo7.toString(2); //轉(zhuǎn)化為二進(jìn)制 var demo11= Infinity; //無(wú)窮大表示法 var demo12= isNaN(100); //非數(shù)字值表示法 var demo13= typeof(12); //數(shù)字的類(lèi)型為 Number var demo14= typeof(new Number(12)); //Number的類(lèi)型為Object var demo15 = (demo13 == demo14); //兩者相等 var demo16 = (demo13=== demo14); //兩者不相等
1.4 理解Javascript中的字符串對(duì)象
var str = "Hello,Anderson";
var demo1 = str[0]; //通過(guò)索引,獲取字符串中的字符,超出最大值則返回undefined
var demo2 = str.indexOf("H"); //獲取目標(biāo)字符串在源字符串中的位置,找不到則返回 -1
var demo3 = str.length; //獲取字符串的長(zhǎng)度
var demo4 = str.lastIndexOf("H"); //獲取目標(biāo)字符串在源字符串中的位置,從串尾開(kāi)始找,找不到返回-1
var demo5 = str.match("Anderson");//從源串中匹配目標(biāo)串,若有,則返回目標(biāo)串,否則,返回返回 null
var demo8 = str.replace("A","d"); //將源串中的目標(biāo)串替換為替換串
var demo9 = str.toUpperCase(); //轉(zhuǎn)換為大寫(xiě)
var demo10= str.toLowerCase(); //轉(zhuǎn)換為小寫(xiě)
var demo11= str.split("d"); //轉(zhuǎn)化為數(shù)組
var demo12= "\'"; //表示單引號(hào)
var demo13= "\""; //表示雙引號(hào)
var demo14= "\\"; //表示斜杠
var demo15= "\n"; //表示換行
var demo16= "\r"; //表示回車(chē)
var demo17= "\t"; //表示制表符
var demo18= "\b"; //表示空格
var demo19= "\f"; //表示換頁(yè)
1.5 理解Javascript中的日期對(duì)象
var demo1 = new Date(); //創(chuàng)建對(duì)象,當(dāng)前日期
var demo2 = new Date(22e9); //創(chuàng)建對(duì)象,毫秒數(shù)
var demo3 = new Date("2016-06-04");//創(chuàng)建對(duì)象,日期字符串
var demo4 = new Date(2016,5,12,12,12,12); //創(chuàng)建對(duì)象,年月日時(shí)分秒
var demo5 = (demo1 > demo2); //比較日期
1.6 理解Javascript中的數(shù)組對(duì)象
var demo1 = new Array(1,2,3,4); //創(chuàng)建數(shù)組 var demo2 = [1,3,4,5]; //創(chuàng)建數(shù)組 var demo3 = demo1.concat(demo2); //合并數(shù)組 var demo5 = demo1.concat(demo2,demo3);//合并數(shù)組
1.7 理解Javascript中的正則對(duì)象RegExp
RegExp是正則表達(dá)式(Regular Expression)的縮寫(xiě)。正則表達(dá)式主要用于文本的檢索。其基本的語(yǔ)法形式如下:
var pattern = new RegExp(pattern,modifiers); //通過(guò)構(gòu)造方法創(chuàng)建正則對(duì)象
var pattern = /pattern/modifiers; //直接聲明正則對(duì)象
//其中,修飾符modifiers有兩種,i和g,i表示不區(qū)分大小寫(xiě),g表示全文檢索
//pattern表示檢索模型
var str = "Hello, Anderson Lu";
var pattern = /llo/gi;
var demo1 = str.match(pattern); //使用實(shí)例
var pattern2 = new RegExp("\\Lu\\gi");
var demo2 = pattern2.test(str); //判斷str中是否有符合模式pattern2的串,返回true或者false
var demo3 = pattern2.exec(str); //返回匹配的字符串
好了,本文到此就結(jié)束了,除此之外,還有一些其他的對(duì)象,比如Math算術(shù)和布爾等等。大家可以通過(guò)腳本之家來(lái)進(jìn)行學(xué)習(xí)。
相關(guān)文章
javascript instanceof,typeof的區(qū)別
區(qū)分string 與 String的區(qū)別2010-03-03
js浮點(diǎn)數(shù)保留兩位小數(shù)點(diǎn)示例代碼(四舍五入)
本篇文章主要介紹了js浮點(diǎn)數(shù)保留兩位小數(shù)點(diǎn)示例代碼(四舍五入) 需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-12-12
關(guān)于promise.all()的使用及說(shuō)明
這篇文章主要介紹了關(guān)于promise.all()的使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04
bootstrap-table formatter 使用vue組件的方法
Bootstrap table是國(guó)人開(kāi)發(fā)的一款基于 Bootstrap 的 jQuery 表格插件,通過(guò)簡(jiǎn)單的設(shè)置,就可以擁有強(qiáng)大的單選、多選、排序、分頁(yè),以及編輯、導(dǎo)出、過(guò)濾(擴(kuò)展)等等的功能。這篇文章重點(diǎn)給大家介紹bootstrap-table formatter 使用vue組件的方法,感興趣的朋友一起看看2019-05-05
D3.js的基礎(chǔ)部分之?dāng)?shù)組的處理數(shù)組的排序和求值(v3版本)
這篇文章主要介紹了D3.js的基礎(chǔ)部分之?dāng)?shù)組的處理數(shù)組的排序和求值(v3版本) ,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05
layui框架中l(wèi)ayer父子頁(yè)面交互的方法分析
這篇文章主要介紹了layui框架中l(wèi)ayer父子頁(yè)面交互的方法,結(jié)合實(shí)例形式分析了layer父子頁(yè)面交互的常用技巧以及l(fā)ayer彈出多個(gè)iframe找到父頁(yè)面的操作方法,需要的朋友可以參考下2017-11-11
JavaScript數(shù)據(jù)結(jié)構(gòu)Number
這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)Number,Number?是JavaScript的基本數(shù)據(jù)結(jié)構(gòu),是對(duì)應(yīng)數(shù)值的應(yīng)用類(lèi)型,下文給大家分享JavaScript使用?Number?的常見(jiàn)問(wèn)題,需要的朋友可以參考一下2022-02-02

