單引號和雙引號中的JavaScript沒有區(qū)別,有時之所以有時在單引號與雙引號是要考慮的一個字符串,例如

成都創(chuàng)新互聯(lián)公司長期為上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為成安企業(yè)提供專業(yè)的成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè),成安網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
海峽=“我是個好孩子!” ;
后面這句話我有一個撇號,省去了逃避麻煩,所以周圍用雙引號括住,當然,你可以寫:
海峽='I \'馬好孩子! ',所以在單引號內(nèi)需要對其進行轉(zhuǎn)義。
雙引號都感同身受。總之,應(yīng)該注意的是,使用配對,如果字符串是在使用時必須使用單引號和雙引號引號的外圍一致的,我們一定要注意逃生,會有一個錯誤。
關(guān)于為什么要使用引號來定義一個包含你當這個變量被賦予字符串的時候,你必須使用包含引號的值的變量,否則將JavaScript的無弦包圍報價標記作為變量名錯誤。
但是,如果你給一個值給一個變量賦值用引號包圍不需要,因為JavaScript的命名未命名的變量以數(shù)字開頭。所以,他并不認為這些數(shù)字是變量名。
沒有代碼架構(gòu),是結(jié)構(gòu)吧?
. 代碼結(jié)構(gòu)
2.1 代碼格式化
2 不要將多個語句放在同一行上。
當一行代碼的長度超過一個可視屏幕寬度時(通常90個字符),使用行接續(xù)符(_)。
分割原則:
2 要找出最適合斷開語句的通常位置,然后設(shè)法在保留字或關(guān)鍵字之間斷開語句。如
果
你必須在字符串的中間斷開語句,應(yīng)該設(shè)法在字之間和空格后面放上一個分隔符。
2 分割兩個表達式之間的執(zhí)行復(fù)雜表達式計算的語句。
2 縮進后續(xù)行
縮進原則:
2 當你將變量設(shè)置為某個值時,所有后續(xù)行的縮進位置應(yīng)該與第一行的變量值相同。
2 當你分割一個很長的過程標題時,所有后續(xù)行均應(yīng)縮進二個制表位(通常為6個字
符
)。
2 當你調(diào)用一個過程時,后續(xù)行縮進到第一個參數(shù)的開始處。
2 當你將變量或?qū)傩栽O(shè)置為等于表達式的計算結(jié)果時,請從等號后面分割該語句,以
確
保該表達式盡可能放在同一行上。
2 當你分割一個長I f語句時,將后續(xù)行縮進兩個制表位( 6個字符)。
2 運用語句縮進來顯示代碼的組織結(jié)構(gòu)。
應(yīng)該在下列情況下對語句進行縮進:
2 當使用End If時,在I f語句后縮進。
2 在E l s e語句后縮進。
2 在Select Case語句后縮進。
2 在C a s e語句后縮進。
2 在D o語句后縮進。
2 已經(jīng)用行接續(xù)符分割的語句的各個行要縮進。
2 在Wi t h語句后縮進。
2 在調(diào)用R e c o r d s e t對象的E d i t或A d d N e w方法后縮進。U p d a t e
或
C o n c e l U p d a t e方法的縮進層次應(yīng)該與E d i t或A d d N e w語句相同。
2 在調(diào)用B e g i n Tr a n s方法后縮進。
2 對所有用戶定義的數(shù)據(jù)類型說明的主體和枚舉說明的主體進行縮進。
2 使用白空間將相關(guān)語句組合在一起。
一般來說,應(yīng)該將空行插入到:
2 每個I f . . . T h e n構(gòu)造的前面和后面(尤其是I f語句前的注釋的前面)。
2 每個Select Case構(gòu)造的前面。
2 每個循環(huán)的前面和后面。
2 變量塊的說明的后面。
2 執(zhí)行統(tǒng)一任務(wù)的兩個語句組的中間。
2 應(yīng)該在兩個過程之間插入兩個空行。
2.2 注釋
2.2.1 使用代碼注釋的目的
使用代碼注釋時,應(yīng)該達到下列目的:
2 用文字說明代碼的作用(即為什么要編寫該代碼,而不是如何編寫)。
2 明確指出該代碼的編寫思路和邏輯方法。
2 使人們注意到代碼中的重要轉(zhuǎn)折點。
2 使代碼的閱讀者不必在他們的頭腦中仿真運行代碼的執(zhí)行過程。
2 在編寫代碼前進行注釋。可以先把整個代碼結(jié)構(gòu)的注釋全部寫上,然后在注釋間編
寫
相應(yīng)代碼。
2 純色字符注釋行只用于主要注釋。
2 避免形成注釋框。
2 使用撇號來指明注釋。(附錄五)
2 增強注釋的可讀性。
2.2.2 注釋原則
2 用文字說明代碼的作用,而不是簡單地重復(fù)代碼做些什么。
2 如果你想違背好的編程原則,請說明為什么。
2 用注釋來說明何時可能出錯和為什么出錯。
2 增強注釋的可讀性。
代碼注釋應(yīng)遵循的書寫規(guī)則:
2 使用完整的語句。出色的注釋能夠說明總的程序流和某個過程的作用,即使與代碼
本
身分開,也能夠說明問題。
2 避免使用縮寫。
2 若要使人們注意注釋中的一個或多個單詞,請全部使用大寫字母。
2 對注釋進行縮進,使之與后隨的語句對齊
2 為每個過程賦予一個注釋標頭。(附錄六)
2 使用內(nèi)部注釋來說明代碼進程。(附錄七)
2 用行尾注釋來說明變量。當描述較短時,可以使用行尾注釋(不建議)。
2.3 循環(huán)結(jié)構(gòu)
2.3.1 使用F o r. . . N e x t,使代碼循環(huán)運行規(guī)定的次數(shù)。
2 用常量取代循環(huán)中的硬編碼。
2 循環(huán)體縮進一個Tab。
2 所有N e x t語句均應(yīng)包含計數(shù)器變量。
2 使用Exit For 退去循環(huán),不要不要使用G o To和一個標注。
2 循環(huán)結(jié)束后不要使用計數(shù)器變量。
2.3.2 使用For Each...Next,循環(huán)運行一個集合的所有成員。
2 不要用For Each...Next來循環(huán)運行數(shù)組。
2 在For Each...Next循環(huán)中盡可能使用特定的數(shù)據(jù)類型。For Each...Next循環(huán)中的
單
元變量必須是Va r i a n t或某些O b j e c t類型(通用或?qū)S茫┳兞俊?/p>
2.3.3 使用D o . . . l o o p,使循環(huán)按照未定次數(shù)來運行。
2 除非你有理由使用別的操作方法,否則請在循環(huán)的開始處計算D o循環(huán)的退出條件。
2 當你在W h i l e與U n t i l之間進行選擇時,請使用能實現(xiàn)最簡單的條件的這個關(guān)鍵字。
2 使用D o循環(huán)或F o r. . . N e x t實現(xiàn)循環(huán),不要使用G o To和一個標注實現(xiàn)循環(huán)
。
2 用D o . . . L o o p取代W h i l e . . . We n d。
2.4 控制結(jié)構(gòu)
2.4.1 當根據(jù)一個條件是Tr u e還是F a l s e來作出判斷時,使用I f . . . T h e
n
. . . E l s e
2 即使只有一個語句被執(zhí)行,也應(yīng)考慮使用End If構(gòu)造,而不要把語句寫在同一行上。
2 Visual Basic不會使復(fù)合條件短路。當你創(chuàng)建一個I f . . . T h e n判斷結(jié)構(gòu)時,可以創(chuàng)建一個由多個較小條件組成的復(fù)合條件。
2.4.2 對非布爾表達式與各種可能的值進行比較時,使用Select Case語句
2 即使不需要,也應(yīng)該在每個Select Case構(gòu)造中包含Case Else語句。
2 所有C a s e語句都應(yīng)該使用便于理解的順序。
2 要注意Case語句的排序,避免出現(xiàn)在后來遇到C a s e語句之前將較早的C a s e語句計算為Tr u e值,而造成計算錯誤。
2.4.3 用行尾注釋使嵌套式判斷結(jié)構(gòu)更加清楚。
2.4.4 對表達式進行格式化,以便進行準確的計算和代碼的理解。
2 決不要將布爾表達式與Tr u e或F a l s e相比較。
2 創(chuàng)建的布爾變量名應(yīng)該反映肯定的條件而不是否定的條件。
2 為了清楚起見,用括號將表達式括起來。即使不要求,也要使用括號。
2 使代碼流更加清楚。當編寫判斷代碼結(jié)構(gòu)時,應(yīng)該盡量使代碼流顯得清楚一些。
2.4.5 不要使用G o S u b。
2.4.6 只有當沒有其他替代方法或者當轉(zhuǎn)移到一個錯誤處理程序或單個退出點時,才使用G o To語句.
先說明一下,表面上看上去是保存到了網(wǎng)站(頁)上,實際上是保存到數(shù)據(jù)庫的。當然也可以保存到文本文件。
還有你說的保存下來應(yīng)該是注冊頁面,像你寫的是登陸,應(yīng)該只是在數(shù)據(jù)庫中查詢用戶名和密碼。看來你要把這些問題弄表楚還有得學(xué)。與這些東西相關(guān)的要學(xué)的多了,你現(xiàn)在還處在連描述你的問題都不會描述的層次。(所以你不要間接的罵人,別人看不懂你問什么是正常的,希望你努力學(xué)習(xí),加油!)
給你一個完整健壯模塊化的可以直接用于網(wǎng)站的ASP代碼怎么樣,自己慢慢看,這可是我寒假時在家敲的。(有比較完整的安全驗證機制,只有這樣的代碼才敢用來做網(wǎng)站,健壯模塊化,便于以后修改,效率更高),要裝IIS才可以運行哦,放WWWROOT下(或建虛擬目錄)用 形式才能正確執(zhí)行。
我測試過了,沒問題的,有詳盡的注釋,相信你看得懂(如果你學(xué)過一點BASIC或C語言的話,看不懂也沒關(guān)系,可以直接拿來用!)
希望我的辛苦沒白費!
注意,連接的是MS SQL數(shù)據(jù)庫,如果你用的ACCESS MDB只要修改最后一個文件的連接數(shù)據(jù)庫部分就行了,代碼在網(wǎng)上很容易找到)(IIS和數(shù)據(jù)庫的一些設(shè)置沒設(shè)好可能無法執(zhí)行哦,特別是IIS在一些精簡版的系統(tǒng)上要么裝不上,要么裝上了用不了(要手動修改組件密碼與IIS密碼同步等,很麻煩,此時可換一個可以替代IIS的軟件,網(wǎng)上搜。XP只能裝IIS 5.1及以下版本)
這個是登陸模塊,按你問題的代碼來的,還過按你說的保存什么的,應(yīng)該是要注冊模塊,如果需要給我發(fā)消息,留下Email。還有將表單內(nèi)容發(fā)到郵箱,可以用ASP里的Jmail發(fā)信(在網(wǎng)上搜 ASP Jmail發(fā)信 就能找到代碼)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
login.htm
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
title用戶登錄/title
script language="javascript" type="text/javascript"!--
function validateLogin()
{
var strUserName=document.frmLogin.txtUserName.value;
var strPassword=document.frmLogin.txtPassword.value;
var primeInUserName=document.frmLogin.txtUserName.value.indexOf( "'");
var primeInPassword=document.frmLogin.txtPassword.value.indexOf( "'");
if( strUserName == "" )
{//也可用單引號
alert( "出錯啦!您還沒輸入用戶名呢!");
//可以直接return false,最后不要return;也可先將false賦給一個變量,在最后一次return,在此前還可設(shè)定一個輸入成功的提示
return false;
}
if( strPassword == "" )
{
alert( "出錯啦!您還沒輸入密碼呢!");
return false;
}
if(primeInUserName != - 1){
alert("抱歉!用戶名中不能使用撇號!");
return false;
}
if(primeInPassword != - 1){
alert("抱歉 ! 密碼中不能使用撇號 ! ");
return false;
}
}
//--
/script
/head
body
form method="post" name="frmLogin" action="verifyID.asp" onsubmit="javascript:return validateLogin();"
table align="center" bgcolor="#cccccc" width="240" border="0" cellspacing="0" cellpadding="0"
tr
td /td
td colspan="2" /td
/tr
tr
td width="82"div align="right"用戶名:/div/td
td colspan="2"input name="txtUserName" size="16" maxlength="16" //td
/tr
tr
tddiv align="right"密碼:/div/td
td colspan="2"input name="txtPassword" type="password" size="16" maxlength="16" //td
/tr
tr
td /td
tdinput name="Submit" type="submit" value="登錄" //td
tdinput name="Reset" type="reset" value="重填" //td
/tr
/table
/form
/body
/html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
verifyID.asp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%
!--#include file="GeneralTools.asp"--
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""
html xmlns=""
head
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
title登錄/title
/head
body
div align="center"
%
dim strUserName
dim strPassword
strUserName=Request.Form("txtUserName")
strPassword=Request.Form("txtPassword")
call tackleEmpty(strUserName)
call tackleEmpty(strPassword)
call tacklePrime(strUserName)
call tacklePrime(strPassword)
call tackleOverLen(strUserName,16)
call tackleOverLen(strPassword,16)
call openDB()
sql="select USER_NAME from UserInfo where(USER_NAME='"strUserName"'and PASSWORD='"strPassword"')"
rs.open sql.coon,1,1
if not rs.eof then
session("UserName")=strUserName
showMsg("登錄成功!")
else
showMsg("登錄失敗!")
end if
call closeDB()
%
/div
/body
/html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
GeneralTools.asp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
%
dim sql,rs,conn,webURL
webURL="http://"Request.ServerVariables("SERVER_NAME")"/"
'簡單的出錯處理
on error resume next
sub openDB()
set conn=server.CreateObject("ADODB.Connection")
conn.open"Driver=SQL Server;Server=MICROSOF-9050D2;Database=MyAsp;Uid=sa;Pwd=123456"
set rs=server.CreateObject("ADODB.Recordset")
end sub
sub closeDB()
if IsObject(conn) then
set rs=nothing
conn.close
set conn=nothing
end if
end sub
'處理空字符串
sub tackleEmpty(strItem)
strItem=lTrim(strItem)
strItem=rTrim(strItem)
if strItem=""then
call closeDB()
response.Redirect webURL
end if
end sub
'處理撇號
sub tacklePrime(strItem)
if inStr("'",strItem)=1 then
call closeDB()
response.Redirect webURL
end if
end sub
'處理超長
sub tackleOverLen(strItem,intLen)
if len(strItem)intLen then
call closeDB()
response.Redirect webURL
end if
end sub
'顯示消息
sub showMsg(strItem)
response.Write "div align='center'"
response.Write "table border='0' width='100%' height='75' cellspacing=0 cellpadding=0"
response.Write "tr"
response.Write "td align='center' valign='center'"
response.Write "font size=3 color=#FF0000"
response.Write strItem
response.Write "a href='javaScript:history.back()'"
response.Write "返回/a"
response.Write "/font"
response.Write "/td/tr/table"
response.Write "/div"
call closeDB()
response.End
end sub
%
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vb中“\”是轉(zhuǎn)義字符的意思。
所有的ASCII碼都可以用“\”加數(shù)字(一般是8進制數(shù)字)來表示。而C中定義了一些字母前加"\"來表示常見的那些不能顯示的ASCII字符,如\0,\t,\n等,就稱為轉(zhuǎn)義字符,因為后面的字符,都不是它本來的ASCII字符意思了。
擴展資料:
轉(zhuǎn)義字符不屬于控制字符;控制字符也不屬于轉(zhuǎn)義字符。如果控制字符的定義是非圖形的字符,或者對輸出設(shè)備(打印機、文本終端)有特殊意義的字符,那么針對這些設(shè)備的轉(zhuǎn)義字符也是控制字符。但是程序設(shè)計用的轉(zhuǎn)義字符是圖形字符,因此它們不是控制字符。相反地,大多數(shù)ASCII控制字符單獨都具有控制功能,因此它們不是轉(zhuǎn)義字符。
字符型變量所能包含的值,我們可以用ASCII表達式來表示一個字符型常量,或者用單引號內(nèi)加反斜杠表示轉(zhuǎn)義字符。
除了vb轉(zhuǎn)義符之外,還有如HTML轉(zhuǎn)義符、java 轉(zhuǎn)義符、xml 轉(zhuǎn)義符、 oracle 轉(zhuǎn)義符、sql 轉(zhuǎn)義符 、sqlserver 轉(zhuǎn)義符、php 轉(zhuǎn)義符、asp 轉(zhuǎn)義符、 javascript 轉(zhuǎn)義符等等,還有網(wǎng)址中的百分號
參考資料來源:百度百科-轉(zhuǎn)義字符
JS中的反斜杠轉(zhuǎn)義字符作用 轉(zhuǎn)義字符是C語言中表示字符的一種特殊形式。通常使用轉(zhuǎn)義字符表示ASCII碼字符集中不可打印的控制字符和特定功能的字符,如用于表示字符常量的單撇號( '),用于表示字符串常量的雙撇號( ")和反斜杠( \)等。轉(zhuǎn)義字符用反斜杠\后面跟一個字符或一個八進制或十六進制數(shù)表示。 轉(zhuǎn)義字符 意義 ASCII碼值(十進制) \a 響鈴(BEL) 007 \b 退格(BS) 008 \f 換頁(FF) 012 \n 換行(LF) 010 \r 回車(CR) 013 \t 水平制表(HT) 009 \v 垂直制表(VT) 011 \\ 反斜杠 092 \? 問號字符 063 \' 單引號字符 039 \" 雙引號字符 034 \0 空字符(NULL) 000 \ddd 任意字符 三位八進制 \xhh 任意字符 二位十六進制 字符常量中使用單引號和反斜杠以及字符常量中使用雙引號和反斜杠時,都必須使用轉(zhuǎn)義字符表示,即在這些字符前加上反斜杠。 在C程序中使用轉(zhuǎn)義字符\ d d d或者\ x h h可以方便靈活地表示任意字符。\ d d d為斜杠后面跟三位八進制數(shù),該三位八進制數(shù)的值即為對應(yīng)的八進制A S C I I碼值。\ x后面跟兩位十六進制數(shù),該兩位十六進制數(shù)為對應(yīng)字符的十六進制A S C I I碼值。 使用轉(zhuǎn)義字符時需要注意以下問題: 1) 轉(zhuǎn)義字符中只能使用小寫字母,每個轉(zhuǎn)義字符只能看作一個字符。 2) \v 垂直制表和\f 換頁符對屏幕沒有任何影響,但會影響打印機執(zhí)行響應(yīng)操作。 3) 在C程序中,使用不可打印字符時,通常用轉(zhuǎn)義字符表示 注: 1,\v垂直制表和\f換頁符對屏幕沒有任何影響,但會影響打印機執(zhí)行響應(yīng)操作。 2,\n其實應(yīng)該叫回車換行。換行只是換一行,不改變光標的橫坐標;回車只是回到行首,不改變光標的縱坐標。 3,\t 光標向前移動四格或八格,可以在編譯器里設(shè)置 4,\' 在字符里(即單引號里)使用。在字符串里(即雙引號里)不需要,只要用 ' 即可。 5,\? 其實不必要。只要用 ? 就可以了(在windows VC6 和tc2 中驗證)。
分享文章:javascript撇號,或者前面有撇號
當前網(wǎng)址:http://chinadenli.net/article3/dsgcpis.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、外貿(mào)網(wǎng)站建設(shè)、商城網(wǎng)站、建站公司、App設(shè)計、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)