javascript字串的轉換
- 2021-08-14
1、如果手動轉的話,用replace()函式將字元替換成對應的字元。
2、js中有一個專門的轉16進位制的編碼函式:encodeURI()
網址URL中特殊字元轉義編碼
字元 - URL編碼值
空格 - %20
“ - %22
# - %23
% - %25
& - %26
( - %28
) - %29
+ - %2B
, - %2C
/ - %2F
: - %3A
; - %3B
< - %3C
= - %3D
> - %3E
? - %3F
@ - %40
\ - %5C
| - %7C
URL特殊字元轉義
URL中一些字元的特殊含義,基本編碼規則如下:
1、空格換成加號(+)
2、正斜槓(/)分隔目錄和子目錄
3、問號(?)分隔URL和查詢
4、百分號(%)制定特殊字元
5、#號指定書籤
6、&號分隔引數
如果需要在URL中用到,需要將這些特殊字元換成相應的十六進位制的值
+ %2B
/ %2F
? %3F
% %25
# %23
& %26
由於在專案中經常要用AJAX傳SQL給後臺服務端
會遇到select num+1 from dual或者左右連線形式。總會丟掉(+)
這個時候可以嘗試用一下URL特殊字元轉義
用JS的encodeURI()函式或者直接改成相對應的十六進位制的值
看網上介紹encodeURI函式也是講URI轉義
(轉自另外一個問題的回答:知道搜尋條目——》百度的%符號是什麼意思)
由於度娘會吞連結,所以不妨連結了。
javascript有一個很有用的函式eval(”string“)
這個函式可以把字串轉換為物件或者可以執行的語句,例如你的程式碼可以用
obj2=eval(”document。a。c“+i),另外你還可以這樣寫eval(”alert()“),
eval(”a+=2“),這樣你就可以讓使用者輸入的javascript語句執行
你的docheck()如此改即可:
function docheck(){
obj1=eval(”document。a。a“+i)
obj2=eval(”document。a。c“+i)
obj1。value=obj2。options[obj2。selectedIndex]。value;
}
http://www。blogjava。net/juhongtao/archive/2006/11/03/78936。html
上面有javascript編碼解碼的詳細介紹
3*16+10=58,這個不是“=”而是“:”,等號是3D,如果真要轉,那還得補差。簡單,這個就是碰見%意味著被編碼了,首先,將16進位制轉化為10進位制,然後找到對應的ASCII值就可以了。