你的意思是怎么用嗎?

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了從化免費(fèi)建站歡迎大家使用!
如果是怎么用的話常用方法有以下幾種:
1、頁面內(nèi)使用script 你的JavaScript內(nèi)容 /script標(biāo)簽;
2、通過script/script標(biāo)簽引用外部JavaScript文件,
eg:script src="xxx.js"/script
JavaScript是一個(gè)很好玩也很有用的語言,希望你玩的開心!
操作字符串的值是一般的開發(fā)人員必須面臨的家常便飯。操作字符串的具體方式有很多,比如說從一個(gè)字符串是提取出一部分內(nèi)容來,或者確定一個(gè)字符串是否包含一個(gè)特定的字符。下面的 JavaScript 函數(shù)為開發(fā)人員提供了他們所需要的所有功能:
? concat() – 將兩個(gè)或多個(gè)字符的文本組合起來,返回一個(gè)新的字符串。
? indexOf() – 返回字符串中一個(gè)子串第一處出現(xiàn)的索引。如果沒有匹配項(xiàng),返回 -1 。
? charAT() – 返回指定位置的字符。
? lastIndexOf() – 返回字符串中一個(gè)子串最后一處出現(xiàn)的索引,如果沒有匹配項(xiàng),返回 -1 。
? match() – 檢查一個(gè)字符串是否匹配一個(gè)正則表達(dá)式。
? substring() – 返回字符串的一個(gè)子串。傳入?yún)?shù)是起始位置和結(jié)束位置。
? replace() – 用來查找匹配一個(gè)正則表達(dá)式的字符串,然后使用新字符串代替匹配的字符串。
? search() – 執(zhí)行一個(gè)正則表達(dá)式匹配查找。如果查找成功,返回字符串中匹配的索引值。否則返回 -1 。
? slice() – 提取字符串的一部分,并返回一個(gè)新字符串。
? split() – 通過將字符串劃分成子串,將一個(gè)字符串做成一個(gè)字符串?dāng)?shù)組。
? length() – 返回字符串的長(zhǎng)度,所謂字符串的長(zhǎng)度是指其包含的字符的個(gè)數(shù)。
? toLowerCase() – 將整個(gè)字符串轉(zhuǎn)成小寫字母。
? toUpperCase() – 將整個(gè)字符串轉(zhuǎn)成大寫字母。
注意: concat 、 match 、 replace 和 search 函數(shù)是在 JavaScript 1.2 中加入的。所有其它函數(shù)在 JavaScript 1.0 就已經(jīng)提供了。
下面讓我們看一下如何在 JavaScript 使用這些函數(shù)。下面的代碼是用到了前面提到的所有函數(shù):
function manipulateString(passedString1, passedString2) {
var concatString;
// The string passed to concat is added to the end of the first string
concatString = passedString1.concat(passedString2);
alert(concatString);
// The following if statement will be true since first word is Tony
if (concatString.charAt(3) == "y") {
alert("Character found!");
}
// The last position of the letter n is 10
alert("The last index of n is: " + concatString.lastIndexOf("n"));
// A regular expression is used to locate and replace the substring
var newString = concatString.replace(/Tony/gi,"General");
// The following yields Please salute General Patton
alert("Please salute " + newString);
// The match function returns an array containing all matches found
matchArray = concatString.match(/Tony/gi);
for (var i=0; imatchArray.length;i++) {
alert("Match found: " + matchArray[i]);
}
// Determine if the regular expression is found, a –1 indicates no
if (newString.search(/Tony/) == -1) {
alert("String not found");
} else {
alert("String found.");
}
// Extract a portion of the string and store it in a new variable
var sliceString = newString.slice(newString.indexOf("l")+2,newString.length);
alert(sliceString);
// The split function creates a new array containing each value separated by a space
stringArray = concatString.split(" ");
for (var i=0; istringArray.length;i++) {
alert(stringArray[i];
}
alert(newString.toUpperCase());
alert(newString.toLowerCase());
}
下面是執(zhí)行上面的代碼得到的結(jié)果:
Tony Patton
Character Found!
The last index of n is: 10
Match found: Tony
Please salute General Patton
String not found
Patton
Tony
Patton
GENERAL PATTON
general patton
示例代碼把所有這些提到的函數(shù)都用到了。
特殊字符
除了這些函數(shù)之外,還有很多的特殊字符可以用來表示關(guān)鍵的效果。這些特殊字符包括:
? – 跳格鍵
? – 退格 / 刪除
? – 回車
? – 換行
? f – 換頁
特殊字符最常見的用途就是格式化輸出。例如,你可能需要在輸出中插入一個(gè)換行來正確地顯示一個(gè)值。而且,在換行時(shí)也需要回車。在一些平臺(tái)上,“ ”已經(jīng)足夠產(chǎn)生換行效果了,而在一些機(jī)器上要正確地顯示一個(gè)換行則需要“ ”。下面的例子顯示了在一個(gè)多行窗口上顯示的特殊字符:
var output = null;
output = "Special Characters";
output += " ";
output += "===============";
output += " ";
output += "t - tab";
output += " ";
output += "b - backspace/delete";
output += " ";
output += "r - carriage return";
output += " ";
output += "n - newline";
output += " ";
output += "f - form feed";
output += " ";
alert(output);
前面的例子使用加號(hào)來連接字符串,而沒有使用 concat 函數(shù)。原因很簡(jiǎn)單,對(duì)于 concat 函數(shù)來說,每一個(gè)操作都需要一個(gè)新的變量;反之,我們這里用的這種方法則簡(jiǎn)單地?cái)U(kuò)展了原有的值,而不需要新的變量。而且,示例中使用換碼符來正確地顯示特殊字符。系統(tǒng)將一個(gè)反斜線當(dāng)作一個(gè)信號(hào),認(rèn)為它后面會(huì)跟一個(gè)特殊字符,但是連著兩個(gè)反斜線則抵消這種操作。輸出中的每個(gè)字符都通過 newline 特殊字符被顯示在新的一行。
添加到工具箱中
特殊字符和函數(shù)可以與其它 JavaScript 技巧結(jié)合起來解決很多問題。其中一種情況是用來進(jìn)行 JavaScript 客戶端表單驗(yàn)證,這篇文章中提出的方法可以簡(jiǎn)單地用來實(shí)現(xiàn)表單驗(yàn)證。
下面的代碼將在一個(gè)表單被提交時(shí)調(diào)用。要提交的表單包含三個(gè)域:名稱、地址和郵政編碼。為了實(shí)現(xiàn)起來比較簡(jiǎn)單,我們只驗(yàn)證每個(gè)域都不能為空,并且郵政編碼必須是數(shù)字。下面的 JavaScript 代碼完成這一功能:
function validation() {
var doc = document.forms[0];
var msg = "";
if (doc.Name.value == "") {
msg += "- Name is missing ";
}
if (doc.Address.value == "") {
msg += "- Address is missing ";
}
if (doc.ZipCode.value == "") {
msg += "- Zip code is missing ";
}
var zip = new String(doc.ZipCode.value);
if (zip.search(/^[0-9][0-9][0-9][0-9][0-9]$/)==-1) {
msg += "- Enter valid Zip code";
}
if (msg == "") {
doc.submit;
} else {
msg = "Please correct the following validation errors and re-submit: " + msg;
alert(msg);
}
}
在用戶提交表單時(shí),這個(gè)函數(shù)就會(huì)被調(diào)用。對(duì)函數(shù)的調(diào)用是在一個(gè) HTML 按鈕的 onSubmit 事件中實(shí)現(xiàn)的。
input type="button" type="submit" value="submit" onClick="validation()"
驗(yàn)證函數(shù)檢查每個(gè)域是否為空。如果發(fā)現(xiàn)了一個(gè)空值,那么就會(huì)在驗(yàn)證消息變量 msg 后面添加一個(gè)出錯(cuò)消息。此外,還使用了一個(gè)正則表達(dá)式來驗(yàn)證郵政編碼域的格式。在這里,我們只接受五位數(shù)的美國地區(qū)郵政編碼。如果發(fā)現(xiàn)有任何錯(cuò)誤(即 msg 變量不為空),那么程序就會(huì)顯示一個(gè)錯(cuò)誤消息;否則的話,程序就會(huì)提交表單。
一門強(qiáng)大的語言
JavaScript 已經(jīng)發(fā)展成熟為一種功能完備的語言,能夠用來構(gòu)建強(qiáng)大的應(yīng)用程序。它是對(duì)具有非連接性天性的 Web 界面的一個(gè)完美的補(bǔ)充,能夠在不與 Web 服務(wù)器交互的情況下完成很多客戶端操作。
1、字符串的創(chuàng)建
創(chuàng)建一個(gè)字符串有幾種方法。最簡(jiǎn)單的是用引號(hào)將一組字符包含起來,可以將其賦值給一個(gè)字符串變量。
var myStr = "Hello, String!";
我們?cè)谏厦婺_本創(chuàng)建了字符串,但本質(zhì)上,它們并不是真正的字符串對(duì)象,準(zhǔn)確地說,它們是字符串類型的值。要?jiǎng)?chuàng)建一個(gè)字符串對(duì)象,可使用如下語句:var strObj = new String("Hello, String!");
使用typeof運(yùn)算符查看會(huì)發(fā)現(xiàn),上面的myStr類型為string,而strObj類型為object。
如果想知道字符串的長(zhǎng)度,使用其length屬性:string.length。
得到字符串的指定位置的字符使用方法:string.charAt(index);
2、字符串的拼接
非常簡(jiǎn)單,就用一個(gè)"+"將兩個(gè)字符串"相加":
var longString = "One piece " + "plus one more piece.";
要將多個(gè)字符串累積為一個(gè)字符串,還可以使用"+="操作符:
var result = "";
result += "My name is Anders"
result += " and my age is 25";
要在字符串中添加換行符,需要使用轉(zhuǎn)義字符"/n":
var confirmString = "You did not enter a response to the last " +
"question./n/nSubmit form anyway?";
var confirmValue = confirm(confirmString);
但這種方法只能用在像警告、確認(rèn)對(duì)話框之類的情況下,如果將這段文本作為HTML內(nèi)容呈現(xiàn),就無效了,此時(shí)用"br"代替它:
var htmlString = "First line of string.brSecond line of string.";
document.write(htmlString);
String對(duì)象還提供了方法concat(),它完成與"+"相同的功能:
string.concat(value1, value2, ...)
不過concat()方法顯然不如"+"來得直觀簡(jiǎn)潔。
3、訪問字符串的子串
使用substring()或slice()方法(NN4+, IE4+),下面說明它們的具體用法。
substring()的原型為: string.substring(from, to)
第一個(gè)參數(shù)from指定了子字符串在原字符串中的起始位置(基于0的索引);第二個(gè)參數(shù)to是可選的,它指定了子字符串在原字符串的結(jié)束位置(基于0的索引),一般情況下,它應(yīng)比from大,如果它被省略,那么子字符串將一直到原字符串的結(jié)尾處。
如果參數(shù)from不小心比參數(shù)to大了會(huì)怎樣?JavaScript會(huì)自動(dòng)調(diào)解子字符串的起止位置,也就是說,substring()總是從兩個(gè)參數(shù)中較小的那個(gè)開始,到較大的那個(gè)結(jié)束。不過要注意,它包含起始位置的那個(gè)字符,但不包含結(jié)束位置的那個(gè)字符。
var fullString = "Every dog has his day.";
var section = fullString.substring(0, 4); // section is "Ever".
slice()的原型為: string.slice(start, end)
參數(shù)start表示子串的起始位置,如果為負(fù)數(shù),那么可以理解為倒數(shù)第幾個(gè)開始,例如-3表示從倒數(shù)第三個(gè)開始;參數(shù)end表示結(jié)束位置,與start一樣,它也可以為負(fù)數(shù),其含義也表示到倒數(shù)第幾個(gè)結(jié)束。slice()的參數(shù)可以為負(fù)數(shù),所以要比substring()更加靈活,但沒那么寬容了,如果start比end要大,它將返回一個(gè)空字符串(示例略)。
還有一個(gè)方法是substr(),其原型為: string.substr(start, length)
從原型可以看出它的參數(shù)的含義,start表示起始位置,length則表示子字符串的長(zhǎng)度。JavaScript標(biāo)準(zhǔn)不提倡使用該方法。
4、字符串的大小寫轉(zhuǎn)換
使用toLowerCase()和toUpperCase()方法:
var city = "ShanGHai";
city = city.toLowerCase(); // city is "shanghai" now.
5、判斷兩個(gè)字符串是否相等
先將用戶的輸入值全部轉(zhuǎn)換為大寫(或小寫),然后再行比較:
var name = document.form1.txtUserName.value.toLowerCase();
if(name == "urname")
{
// statements go here.
}
JavaScript有兩種相等運(yùn)算符。一種是完全向后兼容的,標(biāo)準(zhǔn)的"==",如果兩個(gè)操作數(shù)類型不一致,它會(huì)在某些時(shí)候自動(dòng)對(duì)操作數(shù)進(jìn)行類型轉(zhuǎn)換,考慮下面的賦值語句:
var strA = "i love you!";
var strB = new String("i love you!");
這兩個(gè)變量含有相同的字符序列,但數(shù)據(jù)類型卻不同,前者為string,后者為object,在使用"=="操作符時(shí),JavaScript會(huì)嘗試各種求值,以檢測(cè)兩者是否會(huì)在某種情況下相等。所以下面的表達(dá)式結(jié)果為true: strA == strB。
第二種操作符是"嚴(yán)格"的"===",它在求值時(shí)不會(huì)這么寬容,不會(huì)進(jìn)行類型轉(zhuǎn)換。所以表達(dá)式strA === strB的值為false,雖然兩個(gè)變量持有的值相同。
有時(shí)代碼的邏輯要求你判斷兩個(gè)值是否不相等,這里也有兩個(gè)選擇:"!="和嚴(yán)格的"!==",它們的關(guān)系就類似于"=="和"==="。
討論:
"=="和"!="在求值時(shí)會(huì)盡可能地尋找值的匹配性,但你可能還是想在比較前進(jìn)行顯式的類型轉(zhuǎn)換,以"幫助"它們完成工作。比如,如果想判斷一個(gè)用戶的輸入值(字符串)是否等于一個(gè)數(shù)字,你可以讓"=="幫你完成類型轉(zhuǎn)換:
if(document.form1.txtAge.value == someNumericVar) { ... }
也可以提前轉(zhuǎn)換:
if(parseInt(document.form1.txtAge.value) == someNumericVar) { ... }
如果你比較習(xí)慣于強(qiáng)類型的編程語言(比如C#,Java等),那么這里你可以延續(xù)你的習(xí)慣(類型轉(zhuǎn)換),這樣也會(huì)增強(qiáng)程序的可讀性。
有一種情況需要注意,就是計(jì)算機(jī)的區(qū)域設(shè)置。如果用""和""來比較字符串,那么JavaScript把它們作為Unicode來比較,但顯然,人們?cè)跒g覽網(wǎng)頁時(shí)不會(huì)把文本當(dāng)作Unicode來閱讀:) 比如在西班牙語中,按照傳統(tǒng)的排序,"ch"將作為一個(gè)字符排在"c"和"d"之間。localeCompare()提供了一種方式,可以幫助你使用默認(rèn)區(qū)域設(shè)置下的字符排序規(guī)則。
var strings; // 要排序的字符串?dāng)?shù)組,假設(shè)已經(jīng)得到初始化
strings.sort(function(a,b) { return a.localeCompare(b) }); // 調(diào)用sort()方法進(jìn)行排序
6、字符串的查找
使用string的indexOf()方法:
strObj.indexOf(subString[, startIndex])
strObj為要進(jìn)行判斷的字符串,subString為要在strObj查找的子字符串,startIndex是可選的,表示查找的開始位置(基于0的索引),如果startIndex省略,則從strObj開始處查找,如果startIndex小于0,則從0開始,如果startIndex大于最大索引,則從最大索引處開始。
indexOf()返回strObj中subString的開始位置,如果沒有找到,則返回-1。在腳本中,可以這么使用:
if(largeString.indexOf(shortString) != -1)
{
// 如果包含,進(jìn)行相應(yīng)處理;
}
也許一個(gè)字符串會(huì)包含另一字符串不止一次,這時(shí)第二個(gè)參數(shù)startIndex也許會(huì)派上用場(chǎng),下面這個(gè)函數(shù)演示如何求得一個(gè)字符串包含另外一個(gè)字符串的次數(shù):
function countInstances(mainStr, subStr)
{
var count = 0;
var offset = 0;
do
{
offset = mainStr.indexOf(subStr, offset);
if(offset != -1)
{
count++;
offset += subStr.length;
}
}while(offset != -1)
return count;
}
String對(duì)象有一個(gè)與indexOf()對(duì)應(yīng)的方法,lastIndexOf():
strObj.lastIndexOf(substring[, startindex])
strObj為要進(jìn)行判斷的字符串,subString為要在strObj查找的子字符串,startIndex是可選的,表示查找的開始位置(基于0的索引),如果startIndex省略,則從strObj末尾處查找,如果startIndex小于0,則從0開始,如果startIndex大于最大索引,則從最大索引處開始。該方法自右向左查找,返回subString在strObj中最后出現(xiàn)的位置,如果沒有找到,返回-1。
你根本就不了解javascript,知道為什么非得用javascript么?因?yàn)槟銢]有選擇,現(xiàn)在越來越流行,用的越來越多。你根本就不知道javascript的強(qiáng)大之處,在javascript中,美麗的、優(yōu)雅的語言特性,就像珍珠和一堆魚目混雜在一起一樣。任何語言都有精華和雞肋部分,但是javascript中的雞肋部分的比重超出了預(yù)料,在短到令人吃驚的時(shí)間里,js從不存在發(fā)展到全球采用,它從沒有被試用和打磨,基于某種目的,還在非常粗糙的時(shí)候,就被直接集成到瀏覽器中,這是js被誤解的原因之一。JavaScript的功能也可以使用其他工具實(shí)現(xiàn)?你給我舉一個(gè)例子我聽聽
網(wǎng)頁題目:用javascript,edge怎么禁用javascript
地址分享:http://chinadenli.net/article43/dsepees.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、微信小程序、商城網(wǎng)站、軟件開發(fā)、標(biāo)簽優(yōu)化、域名注冊(cè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)