1. ネイティブ JavaScript は文字列長インターセプトを実装します
次のようにコードをコピーします。
関数cutstr(str, len) {
ヴァルテンプ。
var icount = 0;
var patrn = /[^/x00-/xff]/;
var strre = "";
for (var i = 0; i < str.length; i++) {
if (icount < len - 1) {
temp = str.substr(i, 1);
if (patrn.exec(temp) == null) {
icount = icount + 1
} それ以外 {
icount = icount + 2
}
強度 += 温度
} それ以外 {
壊す
}
}
戻り値 strre + "..."
}
2. ネイティブ JavaScript によるドメイン名ホストの取得
次のようにコードをコピーします。
関数 getHost(url) {
var ホスト = "null";
if(url の種類 == "未定義"|| null == URL) {
URL = window.location.href;
}
var regex = /^/w+/:////([^//]*).*/;
var match = url.match(regex);
if(一致のタイプ != "未定義" && null != 一致) {
ホスト = 一致[1];
}
ホストを返します。
}
3. ネイティブ JavaScript がスペースをクリアする
次のようにコードをコピーします。
String.prototype.trim = function() {
var reExtraSpace = /^/s*(.*?)/s+$/;
return this.replace(reExtraSpace, "$1")
}
4. すべてをネイティブ JavaScript に置き換えます
次のようにコードをコピーします。
String.prototype.replaceAll = function(s1, s2) {
return this.replace(new RegExp(s1, "gm"), s2)
}
5. ネイティブ JavaScript エスケープ HTML タグ
次のようにコードをコピーします。
関数 HtmlEncode(テキスト) {
return text.replace(/&/g, '&').replace(//"/g, '"').replace(/</g, '<').replace(/>/g, '>' )
}
6. ネイティブ JavaScript が HTML タグを復元する
次のようにコードをコピーします。
関数 HtmlDecode(テキスト) {
return text.replace(/&/g, '&').replace(/"/g, '/"').replace(/</g, '<').replace(/>/g, '>' )
}
7. ネイティブ JavaScript の時刻と日付形式の変換
次のようにコードをコピーします。
Date.prototype.Format = function(formatStr) {
var str = formatStr;
var Week = ['日', '一', '二', '三', '四', '五', '六'];
str = str.replace(/yyyy|YYYY/, this.getFullyear());
str = str.replace(/yy|YY/, (this.getyear() % 100) > 9 ? (this.getyear() % 100).toString() : '0' + (this.getyear() % 100 ));
str = str.replace(/MM/, (this.getMonth() + 1) > 9 ? (this.getMonth() + 1).toString() : '0' + (this.getMonth() + 1)) ;
str = str.replace(/M/g, (this.getMonth() + 1));
str = str.replace(/w|W/g, Week[this.getDay()]);
str = str.replace(/dd|DD/, this.getDate() > 9 ? this.getDate().toString() : '0' + this.getDate());
str = str.replace(/d|D/g, this.getDate());
str = str.replace(/hh|HH/, this.getHours() > 9 ? this.getHours().toString() : '0' + this.getHours());
str = str.replace(/h|H/g, this.getHours());
str = str.replace(/mm/, this.getMinutes() > 9 ? this.getMinutes().toString() : '0' + this.getMinutes());
str = str.replace(/m/g, this.getMinutes());
str = str.replace(/ss|SS/, this.getSeconds() > 9 ? this.getSeconds().toString() : '0' + this.getSeconds());
str = str.replace(/s|S/g, this.getSeconds());
文字列を返す
}
8. ネイティブ JavaScript が数値型かどうかを判断します
次のようにコードをコピーします。
関数 isDigit(value) {
var patrn = /^[0-9]*$/;
if (patrn.exec(value) == null || value == "") {
falseを返す
} それ以外 {
trueを返す
}
}
9. ネイティブ JavaScript が Cookie 値を設定する
次のようにコードをコピーします。
function setCookie(名前, 値, 時間) {
var d = 新しい日付();
var オフセット = 8;
var utc = d.getTime() + (d.getTimezoneOffset() * 60000);
var nd = utc + (3600000 * オフセット);
var exp = 新しい日付(nd);
exp.setTime(exp.getTime() + 時間 * 60 * 60 * 1000);
document.cookie = 名前 + "=" +エスケープ(値) + ";path=/;expires=" + exp.toGMTString() + ";domain=360doc.com;"
}
10. ネイティブ JavaScript を使用して Cookie 値を取得する
次のようにコードをコピーします。
関数 getCookie(名前) {
var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
if (arr != null) return unescape(arr[2]);
nullを返す
}
11. ネイティブ JavaScript をお気に入りに追加する
次のようにコードをコピーします。
function AddFavorite(sURL, sTitle) {
試す {
window.external.addFavorite(sURL, sTitle)
} キャッチ(e) {
試す {
window.sidebar.addPanel(sTitle, sURL, "")
} キャッチ(e) {
alert("お気に入りに追加できませんでした。Ctrl+D を使用して追加してください")
}
}
}
12. ネイティブ JavaScript をホームページとして設定する
次のようにコードをコピーします。
関数 setHomepage() {
if (document.all) {
document.body.style.behavior = 'url(#default#homepage)';
document.body.setHomePage('http://www.jq-school.com')
else if (window.sidebar) {
if (window.netscape) {
試す {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect")
} キャッチ(e) {
alert("この操作はブラウザによって拒否されました。この機能を有効にしたい場合は、アドレスバーに「about:config」と入力し、signed.applets.codebase_principal_support の値を true に設定してください。")
}
}
var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
prefs.setCharPref('browser.startup.homepage', 'http://www.jq-school.com')
}
}
13. ネイティブ JavaScript が IE6 を決定する
次のようにコードをコピーします。
var ua = navigator.userAgent.toLowerCase();
var isIE6 = ua.indexOf("msie 6") > -1;
if (isIE6) {
試す {
document.execCommand("BackgroundImageCache", false, true)
} キャッチ(e) {}
}
14. ネイティブ JavaScript によるスタイル ファイルの読み込み
次のようにコードをコピーします。
関数LoadStyle(url) {
試す {
document.createStyleSheet(url)
} キャッチ(e) {
var cssLink = document.createElement('link');
cssLink.rel = 'スタイルシート';
cssLink.type = 'テキスト/css';
cssLink.href = URL;
var head = document.getElementsByTagName('head')[0];
head.appendChild(cssLink)
}
}
15. ネイティブ JavaScript はスクリプトのコンテンツを返します
次のようにコードをコピーします。
関数 evalscript(s) {
if(s.indexOf('<script') == -1) s を返します。
var p = /<script[^/>]*?>([^/x00]*?)</script>/ig;
var arr = [];
while(arr = p.exec(s)) {
var p1 = /<script[^/>]*?src=/"([^/>]*?)/"[^/>]*?(reload=/"1/")?(?:charset= /"([/w/-]+?)/")?><//script>/i;
var arr1 = [];
arr1 = p1.exec(arr[0]);
if(arr1) {
appendscript(arr1[1], '', arr1[2], arr1[3]);
} それ以外 {
p1 = /<script(.*?)>([^/x00]+?)<//script>/i;
arr1 = p1.exec(arr[0]);
appendscript('', arr1[2], arr1[1].indexOf('reload=') != -1);
}
}
を返します。
}
16. ネイティブ JavaScript がスクリプトの内容をクリアする
次のようにコードをコピーします。
関数ストリップスクリプト {
return s.replace(/<script.*?>.*?<//script>/ig, '');
}
17. ネイティブ JavaScript はスクリプト ファイルを動的にロードします
次のようにコードをコピーします。
関数 appendscript(src, text, reload, charset) {
var id = ハッシュ(ソース + テキスト);
if(!reload && in_array(id, evalscripts)) return;
if(リロード && $(id)) {
$(id).parentNode.removeChild($(id));
}
evalscripts.push(id);
var scriptNode = document.createElement("スクリプト");
scriptNode.type = "テキスト/javascript";
scriptNode.id = id;
scriptNode.charset = charset ? charset : (BROWSER.firefox ? document.characterSet : document.charset);
試す {
if(ソース) {
scriptNode.src = src;
スクリプトノード = false;
scriptNode.onload = function () {
スクリプトノード = true;
JSLOADED[src] = 1;
};
scriptNode.onreadystatechange = function () {
if((scriptNode.readyState == 'ロード済み' || scriptNode.readyState == 'complete') && !scriptNode. {
スクリプトノード = true;
JSLOADED[src] = 1;
}
};
else if(テキスト){
scriptNode.text = テキスト;
}
document.getElementsByTagName('head')[0].appendChild(scriptNode);
} キャッチ(e) {}
}
18. ネイティブ JavaScript は ID で取得した要素オブジェクトを返します
次のようにコードをコピーします。
関数 $(id) {
!id を返しますか? null : document.getElementById(id);
}
19. ネイティブ JavaScript はブラウザーのバージョンのコンテンツを返します
次のようにコードをコピーします。
関数 browserVersion(types) {
その他の変数 = 1;
for(i 型) {
var v = タイプ[i] タイプ[i] : i;
if(USERAGENT.indexOf(v) != -1) {
var re = new RegExp(v + '(///|//s)([//d//.]+)', 'ig');
var マッチ = re.exec(USERAGENT);
var ver = 一致 != null 一致[2] : 0;
other = ver !== 0 && v != 'mozilla' 0 : その他;
}それ以外 {
var ver = 0;
}
eval('BROWSER.' + i + '= ver');
}
BROWSER.other = その他;
}
20. ネイティブ JavaScript 要素を表示するための一般的な方法
次のようにコードをコピーします。
関数 $(id) {
!id を返しますか? null : document.getElementById(id);
}
関数表示(id) {
var obj = $(id);
if(obj.style.visibility) {
obj.style.visibility = obj.style.visibility == '可視' : '可視';
} それ以外 {
obj.style.display = obj.style.display == '' ? 'none' : '';
}
}
21. ネイティブJavaScriptにはinsertBeforeメソッドはありますが、残念ながらinsertAfterメソッドはありません。以下の関数を使用して実装しますか?
次のようにコードをコピーします。
関数 insertAfter(newChild,refChild){
var parElem=refChild.parentNode;
if(parElem.lastChild==refChild){
refChild.appendChild(newChild);
}それ以外{
parElem.insertBefore(newChild,refChild.nextSibling);
}
}
22. ネイティブ JavaScript のブラウザー バインド要素イベントとの互換性
次のようにコードをコピーします。
関数 addEventSamp(obj,evt,fn){
if (obj.addEventListener) {
obj.addEventListener(evt, fn, false);
}else if(obj.attachEvent){
obj.attachEvent('on'+evt,fn);
}
}
23. カーソルがテキストの後ろで停止し、テキスト ボックスにフォーカスが移ると、ネイティブ JavaScript が呼び出されます。
次のようにコードをコピーします。
関数 focusLast(){
var e = イベント.srcElement;
var r =e.createTextRange();
r.moveStart('character',e.value.length);
r.collapse(true);
r.select();
}
24. ネイティブ JavaScript は URL リンクが有効かどうかをチェックします
次のようにコードをコピーします。
関数 getUrlState(URL){
var xmlhttp = new ActiveXObject("microsoft.xmlhttp");
xmlhttp.Open("GET",URL, false);
試す{
xmlhttp.Send();
}キャッチ(e){
}ついに{
var result = xmlhttp.responseText;
if(結果){
if(xmlhttp.Status==200){
戻り値(true);
}それ以外{
戻り値(偽);
}
}それ以外{
戻り値(偽);
}
}
}
25. ネイティブ JavaScript 書式設定 CSS スタイル コード
次のようにコードをコピーします。
function formatCss(s){//コードのフォーマット
s = s.replace(//s*([/{/}/:/;/,])/s*/g, "$1");
s = s.replace(/;/s*;/g, ";");
s = s.replace(//,[/s/./#/d]*{/g, "{");
s = s.replace(/([^/s])/{([^/s])/g, "$1 {/n/t$2");
s = s.replace(/([^/s])/}([^/n]*)/g, "$1/n}/n$2");
s = s.replace(/([^/s]);([^/s/}])/g, "$1;/n/t$2");
を返します。
}
26. ネイティブ JavaScript は CSS スタイル コードを圧縮します
次のようにコードをコピーします。
function yasuoCss (s) {//圧縮コード
s = s.replace(////*(.|/n)*?/*///g, ""); //コメントを削除
s = s.replace(//s*([/{/}/:/;/,])/s*/g, "$1");
s = s.replace(//,[/s/./#/d]*/{/g, "{");
s = s.replace(/;/s*;/g, ";");
s = s.match(/^/s*(/S+(/s+/S+)*)/s*$/); //先頭と末尾の空白を削除します。
return (s == null) "" : s[1];
}
27. ネイティブ JavaScript が現在のパスを取得する
次のようにコードをコピーします。
var currentPageUrl = "";
if (typeof this.href === "未定義") {
currentPageUrl = document.location.toString().toLowerCase();
}
それ以外 {
currentPageUrl = this.href.toString().toLowerCase();
}
28. ネイティブ JavaScript IP を整数に変換する
次のようにコードをコピーします。
関数_ip2int(ip){
varnum = 0;
ip = ip.split(".");
num = 数値(ip[0]) * 256 * 256 * 256 + 数値(ip[1]) * 256 * 256 + 数値(ip[2]) * 256 + 数値(ip[3]);
数値 = 数値 >>> 0;
数値を返します。
}
29. ネイティブ JavaScript 整数は IP アドレスに解析されます
次のようにコードをコピーします。
関数 _int2iP(数値){
var str;
var tt = 新しい配列();
tt[0] = (数値 >>> 24) >>> 0;
tt[1] = ((num << 8) >>> 24) >>> 0;
tt[2] = (数値 << 16) >>> 24;
tt[3] = (数値 << 24) >>> 24;
str = 文字列(tt[0]) + "." + 文字列(tt[1]) + "." + 文字列(tt[2]) + "." + 文字列(tt[3]);
文字列を返します。
}
30. ネイティブ JavaScript はチェックボックスの選択またはなしの選択を実装します
次のようにコードをコピーします。
関数 checkAll() {
var selectall = document.getElementById("selectall");
var allbox = document.getElementsByName("allbox");
if (selectall.checked) {
for (var i = 0; i < allbox.length; i++) {
allbox[i].checked = true;
}
} それ以外 {
for (var i = 0; i < allbox.length; i++) {
allbox[i].checked = false;
}
}
}
注:モバイル(31~40)
31. ネイティブ JavaScript はデバイスがモバイルかどうかを判断します
次のようにコードをコピーします。
関数 isMobile(){
if (typeof this._isMobile === 'boolean'){
これを返します。_isMobile;
}
var screenWidth = this.getScreenWidth();
var fixViewPortsExperiment = rendererModel.runningExperiments.FixViewport || rendererModel.runningExperiments.fixviewport;
var fixViewPortsExperimentRunning = fixViewPortsExperiment && (fixViewPortsExperiment.toLowerCase() === "new");
if(!fixViewPortsExperiment){
if(!this.isAppleMobileDevice()){
screenWidth = screenWidth/window.devicePixelRatio;
}
}
var isMobileScreenSize = screenWidth < 600;
var isMobileUserAgent = false;
this._isMobile = isMobileScreenSize && this.isTouchScreen();
これを返します。_isMobile;
}
32. ネイティブ JavaScript はモバイル デバイスがアクセスするかどうかを決定します
次のようにコードをコピーします。
関数 isMobileUserAgent(){
return (/iphone|ipod|android.*mobile|windows.*phone|blackberry.*mobile/i.test(window.navigator.userAgent.toLowerCase()));
}
33. ネイティブ JavaScript は Apple モバイルデバイスがアクセスするかどうかを決定します
次のようにコードをコピーします。
関数はAppleMobileDevice(){
return (/iphone|ipod|ipad|Macintosh/i.test(navigator.userAgent.toLowerCase()));
}
34. ネイティブ JavaScript は Android モバイル デバイスがアクセスするかどうかを決定します
次のようにコードをコピーします。
関数はAndroidMobileDevice(){
return (/android/i.test(navigator.userAgent.toLowerCase()));
}
35. ネイティブ JavaScript が画面がタッチされたかどうかを判断します
次のようにコードをコピーします。
関数 isTouchScreen(){
return ((window の 'ontouchstart') || window.DocumentTouch && DocumentTouch のドキュメント インスタンス);
}
36. ネイティブ JavaScript は Android 上の Google Chrome にあるかどうかを決定します
次のようにコードをコピーします。
関数 isNewChromeOnAndroid(){
if(this.isAndroidMobileDevice()){
var userAgent = navigator.userAgent.toLowerCase();
if((/chrome/i.test(userAgent))){
var Parts = userAgent.split('chrome/');
var fullVersionString = Parts[1].split(" ")[0];
var versionString = fullVersionString.split('.')[0];
var version = parseInt(versionString);
if(バージョン >= 27){
true を返します。
}
}
}
false を返します。
}
37. ネイティブ JavaScript がウィンドウを開くかどうかを決定します
次のようにコードをコピーします。
関数 isViewportOpen() {
return !!document.getElementById('wixMobileViewport');
}
38. モバイルデバイスの初期サイズを取得するためのネイティブ JavaScript
次のようにコードをコピーします。
関数 getInitZoom(){
if(!this._initZoom){
var screenWidth = Math.min(screen.height, screen.width);
if(this.isAndroidMobileDevice() && !this.isNewChromeOnAndroid()){
screenWidth = screenWidth/window.devicePixelRatio;
}
this._initZoom = screenWidth /document.body.offsetWidth;
}
これを返します。_initZoom;
}
39. モバイルデバイスのサイズを最大化するネイティブJavaScript
次のようにコードをコピーします。
関数 getZoom(){
var screenWidth = (Math.abs(window.orientation) === 90) ? Math.max(screen.height, screen.width) : Math.min(screen.height, screen.width);
if(this.isAndroidMobileDevice() && !this.isNewChromeOnAndroid()){
screenWidth = screenWidth/window.devicePixelRatio;
}
var FixViewPortsExperiment = rendererModel.runningExperiments.FixViewport || rendererModel.runningExperiments.fixviewport;
var FixViewPortsExperimentRunning = FixViewPortsExperiment && (FixViewPortsExperiment === "新規" || FixViewPortsExperiment === "新規");
if(FixViewPortsExperimentRunning){
screenWidth / window.innerWidth を返します。
}それ以外{
screenWidth / document.body.offsetWidth を返します。
}
}
40. モバイルデバイスの画面幅を取得するネイティブJavaScript
次のようにコードをコピーします。
関数 getScreenWidth(){
var smallSide = Math.min(screen.width, screen.height);
var fixViewPortsExperiment = rendererModel.runningExperiments.FixViewport || rendererModel.runningExperiments.fixviewport;
var fixViewPortsExperimentRunning = fixViewPortsExperiment && (fixViewPortsExperiment.toLowerCase() === "new");
if(fixViewPortsExperiment){
if(this.isAndroidMobileDevice() && !this.isNewChromeOnAndroid()){
SmallSide = SmallSide/window.devicePixelRatio;
}
}
SmallSide を返します。
}
41. ネイティブ JavaScript は URL かどうかを完全に判断します
次のようにコードをコピーします。
関数 IsURL(strUrl) {
var 正規 = /^/b(((https?|ftp):////)?[-a-z0-9]+(/.[-a-z0-9]+)*/.(?:com|edu |gov|int|mil|net|org|biz|info|name|museum|a sia|coop|aero|[az][az]|((25[0-5])|(2[0-4]/d)|(1/d/d)|([1-9]/d )|/d))/b(//[-a-z0-9_:/@&?=+,.!//~%/$]*)?)$/i
if (正規.test(strUrl)) {
true を返します。
}
それ以外 {
false を返します。
}
}
42. ネイティブ JavaScript はスタイル名に基づいて要素オブジェクトを取得します
次のようにコードをコピーします。
関数 getElementsByClassName(name) {
var tags = document.getElementsByTagName('*') || document.all;
var els = [];
for (var i = 0; i < tags.length; i++) {
if (tags[i].className) {
var cs = tags[i].className.split(' ');
for (var j = 0; j < cs.length; j++) {
if (name == cs[j]) {
els.push(タグ[i]);
壊す
}
}
}
}
エルを返す
}
43. ネイティブ JavaScript は、特定の文字列で始まるかどうかを判断します
次のようにコードをコピーします。
String.prototype.startWith = 関数 {
this.indexOf(s) == 0 を返す
}
44. ネイティブ JavaScript は特定の文字列で終わるかどうかを判断します
次のようにコードをコピーします。
String.prototype.endWith = 関数 {
var d = this.length - s.length;
return (d >= 0 && this.lastIndexOf(s) == d)
}
45. ネイティブ JavaScript は IE ブラウザのバージョン番号を返します
次のようにコードをコピーします。
関数 getIE(){
if (window.ActiveXObject){
var v = navigator.userAgent.match(/MSIE ([^;]+)/)[1];
return parseFloat(v.substring(0, v.indexOf(".")))
}
falseを返す
}
46. ネイティブJavaScriptでページの高さを取得する
次のようにコードをコピーします。
関数 getPageHeight(){
var g = ドキュメント、a = g.body、f = g.documentElement、d = g.compatMode == "BackCompat"
?a
: g.documentElement;
return Math.max(f.scrollHeight, a.scrollHeight, d.clientHeight);
}
47. ネイティブ JavaScript がページスクロール左を取得する
次のようにコードをコピーします。
関数 getPageScrollLeft(){
var a = ドキュメント;
a.documentElement.scrollLeft を返します || a.body.scrollLeft;
}
48. ネイティブ JavaScript はページの表示幅を取得します
次のようにコードをコピーします。
関数 getPageViewWidth(){
var d = ドキュメント、a = d.compatMode == "BackCompat"
?d.body
: d.documentElement;
a.clientWidth を返します。
}
49. ページ幅を取得するネイティブ JavaScript
次のようにコードをコピーします。
関数 getPageWidth(){
var g = ドキュメント、a = g.body、f = g.documentElement、d = g.compatMode == "BackCompat"
?a
: g.documentElement;
return Math.max(f.scrollWidth, a.scrollWidth, d.clientWidth);
}
50. ネイティブ JavaScript がページのスクロールトップを取得する
次のようにコードをコピーします。
関数 getPageScrollTop(){
var a = ドキュメント;
a.documentElement.scrollTop || a.body.scrollTopを返します。
}
61. ネイティブ JavaScript が offsetX の互換性問題を解決する
次のようにコードをコピーします。
// OffsetX/Y は Firefox ではサポートされていません
関数 getOffset(e){
var target = e.target, //現在トリガーされているターゲット オブジェクト
イベント座標、
ページ座標、
オフセット座標;
// 現在のトリガー要素からドキュメントまでの距離を計算します
pageCoord = getPageCoord(ターゲット);
// カーソルからドキュメントまでの距離を計算します
イベント座標 = {
X : window.pageXOffset + e.clientX,
Y : window.pageYOffset + e.clientY
};
// 減算して、最初に位置する親要素までのカーソルの座標を取得します。
オフセット座標 = {
X :eventCoord.X - pageCoord.X、
Y : イベント座標.Y - ページ座標.Y
};
オフセット座標を返します。
}
関数 getPageCoord(element){
var coord = { X : 0, Y : 0 };
// 現在のトリガー要素からルート ノードまでを計算します。
//すべてのレベルの offsetParent 要素の offsetLeft または offsetTop の値の合計
while (要素){
coord.X += element.offsetLeft;
coord.Y += element.offsetTop;
要素 = 要素.オフセット親;
}
座標を返します。
}
62. ネイティブ JavaScript で一般的に使用される正規表現
次のようにコードをコピーします。
//正の整数
/^[0-9]*[1-9][0-9]*$/;
//負の整数
/^-[0-9]*[1-9][0-9]*$/;
//正の浮動小数点数
/^(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/ .[0-9]+)|([0-9]*[1-9][0-9]*))$/;
//負の浮動小数点数
/^(-(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9] */.[0-9]+)|([0-9]*[1-9][0-9]*)))$/;
//浮動小数点数
/^(-?/d+)(/./d+)?$/;
//電子メールアドレス
/^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$/;
//URLアドレス
/^[a-zA-z]+://(/w+(-/w+)*)(/.(/w+(-/w+)*))*(/?/S*)?$/;
//年/月/日 (年-月-日、年.月.日)
/^(19|20)/d/d[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9] |3[01])$/;
//中国語の文字と一致する
/[/u4e00-/u9fa5]/;
// 一致するアカウントが合法かどうか (文字で始まり、5 ~ 10 バイトが許可され、英数字のアンダースコアが許可されます)
/^[a-zA-Z][a-zA-Z0-9_]{4,9}$/;
//空白行と一致する正規表現
//n/s*/r/;
//中国の郵便番号と一致
/[1-9]/d{5}(?!/d)/;
//IDカードを照合する
//d{15}|/d{18}/;
//国内の電話番号と一致する
/(/d{3}-|/d{4}-)?(/d{8}|/d{7})?/;
//IPアドレスの一致
/((2[0-4]/d|25[0-5]|[01]?/d/d?)/.){3}(2[0-4]/d|25[0-5] ]|[01]?/d/d?)/;
//先頭および末尾の空白文字に一致する正規表現
/^/s*|/s*$/;
//HTMLタグに一致する正規表現
< (/S*?)[^>]*>.*?|< .*? />;
63. ネイティブ JavaScript はトップに戻る一般的なメソッドを実装します
次のようにコードをコピーします。
関数 backTop(btnId) {
var btn = document.getElementById(btnId);
var d = ドキュメント.ドキュメント要素;
var b = ドキュメント.ボディ;
window.onscroll = セット;
btn.style.display = "なし";
btn.onclick = function() {
btn.style.display = "なし";
window.onscroll = null;
this.timer = setInterval(function() {
d.scrollTop -= Math.ceil((d.scrollTop + b.scrollTop) * 0.1);
b.scrollTop -= Math.ceil((d.scrollTop + b.scrollTop) * 0.1);
if ((d.scrollTop + b.scrollTop) == 0) clearInterval(btn.timer, window.onscroll = set);
}、
10);
};
関数セット() {
btn.style.display = (d.scrollTop + b.scrollTop > 100) 'ブロック': "なし" ?
}
};
backTop('goTop');
64. ネイティブ JavaScript は URL の GET パラメータ値を取得します
次のようにコードをコピーします。
// 使用法: アドレスが test.htm?t1=1&t2=2&t3=3 の場合、次を取得できます: GET["t1"]、GET["t2"]、GET["t3"]
関数 get_get(){
querystr = window.location.href.split("?")
if(querystr[1]){
GETs = querystr[1].split("&")
GET =newArray()
for(i=0;i<GETs.length;i++){
tmp_arr = GETs[i].split("=")
キー=tmp_arr[0]
GET[キー] = tmp_arr[1]
}
}
クエリ文字列[1]を返します。
}
65. ネイティブ JavaScript は、すべてを選択する普遍的なメソッドを実装します。
次のようにコードをコピーします。
関数 checkall(フォーム、プレフィックス、チェックオール) {
var checkall = checkall : 'chkall';
for(var i = 0; i < form.elements.length; i++) {
var e = form.elements[i];
if(e.type=="チェックボックス"){
e.checked = form.elements[checkall].checked;
}
}
}
66. ネイティブ JavaScript は、すべての選択を解除する汎用メソッドを実装します。
次のようにコードをコピーします。
関数 uncheckAll(form) {
for (var i=0;i<form.elements.length;i++){
var e = form.elements[i];
if (e.name != 'chkall')
e.checked=!e.checked;
}
}
67. ネイティブ JavaScript はフォームを開くための一般的なメソッドを実装します
次のようにコードをコピーします。
function openWindow(url,windowName,width,height){
var x = parseInt(screen.width / 2.0) - (width / 2.0);
var y = parseInt(screen.height / 2.0) - (height / 2.0);
var isMSIE= (navigator.appName == "Microsoft Internet Explorer");
if (isMSIE) {
var p = "サイズ変更可能=1、場所=いいえ、スクロールバー=いいえ、幅=;
p = p+幅;
p = p+",高さ=";
p = p+高さ;
p = p+",left=";
p = p+x;
p = p+",top=";
p = p+y;
retval = window.open(url, windowName, p);
} それ以外 {
var win = window.open(url, "ZyiisPopup", "top=" + y + ",left=" + x + ",scrollbars=" + スクロールバー + ",dialog=yes,modal=yes,width=" + width + ",height=" + height + ",resizable=no" );
eval("try { win.resizeTo(width, height); } catch(e) { }");
win.focus();
}
}
68. ネイティブ JavaScript はクライアント デバイスであるかどうかを判断します
次のようにコードをコピーします。
関数 client(o){
var b = navigator.userAgent.toLowerCase();
var t = false;
if (o == 'isOP'){
t = b.indexOf('オペラ') > -1;
}
if (o == 'isIE'){
t = b.indexOf('msie') > -1;
}
if (o == 'isFF'){
t = b.indexOf('firefox') > -1;
}
t を返します。
}
69. ラジオボタンの値を取得するネイティブJavaScript
次のようにコードをコピーします。
関数 get_radio_value(フィールド){
if(フィールド&&フィールド.長さ){
for(var i=0;i<field.length;i++){
if(フィールド[i].checked){
フィールド[i].値を返します。
}
}
}それ以外 {
戻る ;
}
}
70. チェックボックスの値を取得するネイティブ JavaScript
次のようにコードをコピーします。
関数 get_checkbox_value(フィールド){
if(フィールド&&フィールド.長さ){
for(var i=0;i<field.length;i++){
if(フィールド[i].checked && !フィールド[i].disabled){
フィールド[i].値を返します。
}
}
}それ以外 {
戻る;
}
}
(71~80) 検証 この記事では主に、電子メール、危険な文字、検証長さ、検証 URL、小数点、整数、浮動小数点数の検証、およびその他の一般的に使用される検証を含む、よく使用される 10 個のフォーム検証機能について説明します。通常のフォーム検証には jquery 検証プラグインは必要ありません。皆さんのお役に立てれば幸いです。 。 。
71. ネイティブ JavaScript は電子メール アドレスかどうかを判断します
次のようにコードをコピーします。
関数 isEmail(str){
var re=/^/w+((-/w+)|(/./w+))*/@[A-Za-z0-9]+((/.|-)[A-Za-z0-9] +)*/.[A-Za-z0-9]+$/;
if (re.test(str) != true) {
false を返します。
}それ以外{
true を返します。
}
}
72. ネイティブ JavaScript はリストに危険な文字があるかどうかを判断します
次のようにコードをコピーします。
関数 isValidReg(chars){
変数re=/<|>|/[|/]|/{|/}|『|』|※|○|●|◎|§|△|▲|☆|★|◇|◆|□|||| |⊙||ㄅ|ㄆ|ㄇ|ㄈ|ㄉ|ㄊ|ㄋ|ㄌ| ㄍ|ㄎ|ㄏ|ㄐ|ㄑ|ㄒ|ㄓ|ㄔ|ㄕ|ㄖ|ㄗ|ㄘ|ㄙ|ㄚ|ㄛ|ㄜ|ㄝ|ㄞ| ㄟ|ㄢ|ㄣ|ㄤ|ㄥ|ㄦ|ㄧ|ㄨ|ㄩ|■|||/*|@|#|/^|///;
if (re.test(chars) == true) {
false を返します。
}それ以外{
true を返します。
}
}
73. ネイティブ JavaScript は、文字列が指定された長さより大きいかどうかを判断します
次のようにコードをコピーします。
関数 isValidLength(chars, len) {
if (chars.length < len) {
false を返します。
}
true を返します。
}
74. ネイティブ JavaScript は、文字列が URL であるかどうかを判断し、大文字と小文字は区別しません。
次のようにコードをコピーします。
関数 isValidURL( chars ) {
var re=/^([hH][tT]{2}[pP]:////|[hH][tT]{2}[pP][sS]:////)(/S+/。 /S+)$/;
if (!isNULL(chars)) {
chars = jsTrim(chars);
if (chars.match(re) == null)
false を返します。
それ以外
true を返します。
}
false を返します。
}
75. ネイティブ JavaScript は文字列が 10 進数かどうかを判断します
次のようにコードをコピーします。
関数 isValidDecimal( chars ) {
var re=/^/d*/.?/d{1,2}$/;
if (chars.match(re) == null)
false を返します。
それ以外
true を返します。
}
76. ネイティブ JavaScript は文字列が整数かどうかを判断します
次のようにコードをコピーします。
関数 isNumber(chars) {
var re=/^/d*$/;
if (chars.match(re) == null)
false を返します。
それ以外
true を返します。
}
77. ネイティブ JavaScript は文字列が浮動小数点数かどうかを判断します
次のようにコードをコピーします。
関数 isFloat( str ) {
for(i=0;i<str.length;i++) {
if ((str.charAt(i)<"0" || str.charAt(i)>"9")&& str.charAt(i) != '.'){
false を返します。
}
}
true を返します。
}
78. ネイティブ JavaScript は、文字が A-Za-z の英字かどうかを判断します
次のようにコードをコピーします。
関数 isLetters(str){
var re=/^[A-Za-z]+$/;
if (str.match(re) == null)
false を返します。
それ以外
true を返します。
}
79. ネイティブ JavaScript は文字列が郵便番号かどうかを判断します
次のようにコードをコピーします。
関数 isValidPost( chars ) {
var re=/^/d{6}$/;
if (chars.match(re) == null)
false を返します。
それ以外
true を返します。
}
80. ネイティブ JavaScript は文字が NULL かどうかを判断します
次のようにコードをコピーします。
関数 isNULL(chars) {
if (chars == null)
true を返します。
if (jsTrim(chars).length==0)
true を返します。
false を返します。
}
81. ネイティブ JavaScript は正規表現を使用してページ コード内のすべての URL を抽出します
次のようにコードをコピーします。
var aa = document.documentElement.outerHTML.match(/(url/(|src=|href=)[/"/']*([^/"/'/(/)/</>/[/] ] +)[/"/'/)]*|(http:////[/w/-/.]+[^/"/'/(/)/</>/[/] ]+)/ig).join("/r/n").replace(/^(src=|href=|url/()[/"/']*|[/"/'/>/) ] *$/igm,"");
アラート(aa);
82. ネイティブ JavaScript は正規表現を使用して同一の配列をクリアします (効率が低い)
次のようにコードをコピーします。
Array.prototype.unique=function(){
return this.reverse().join(",").match(/([^,]+)(?!.*/1)/ig).reverse();
}
83. ネイティブ JavaScript は正規表現を使用して同一の配列をクリアします (高効率)
次のようにコードをコピーします。
String.prototype.unique=function(){
var x=this.split(/[/r/n]+/);
var y='';
for(var i=0;i<x.length;i++){
if(!new RegExp("^"+x[i].replace(/([^/w])/ig,"//$1")+"$","igm").test(y)){
y+=x[i]+"/r/n"
}
}
yを返す
}
84. ネイティブ JavaScript は正規表現を使用してアルファベット順に並べ替え、配列内の各行を並べ替えます
次のようにコードをコピーします。
関数 SetSort(){
var text=K1.value.split(/[/r/n]/).sort().join("/r/n");//order
var test=K1.value.split(/[/r/n]/).sort().reverse().join("/r/n");//逆順
K1.value=K1.value!=テキスト?テキスト:テスト;
}
85. ネイティブ JavaScript 文字列の逆順
次のようにコードをコピーします。
関数 IsReverse(テキスト){
return text.split('').reverse().join('');
}
86. ネイティブ JavaScript は正規表現を使用して HTML コード内のスクリプトをクリアします
次のようにコードをコピーします。
関数クリア_スクリプト(){
K1.value=K1.value.replace(/<script.*?>[/s/S]*?<//script>|/s+on[a-zA-Z]{3,16}/s ?=/s?"[/s/S]*?"|/s+on[a-zA-Z]{3,16}/s?=/s?'[/s/S]*?'| /s+on[a-zA-Z]{3,16}/s?=[^ >]+/ig,"");
}
87. ネイティブ JavaScript は JavaScript スクリプトを動的に実行します
次のようにコードをコピーします。
関数 javascript(){
試す{
eval(K1.value);
}キャッチ(e){
アラート(電子メッセージ);
}
}
88. ネイティブ JavaScript は VBScript スクリプトを動的に実行します
次のようにコードをコピーします。
関数 vbscript(){
試す{
var script=document.getElementById("K1").value;
if(script.trim()=="")return;
window.execScript('On Error Resume Next /n'+script+'/n If Err.Number<>0 then /n MsgBox "正しい VBScript スクリプトを入力してください!",48,"スクリプト エラー!" /n End If' 、「vbscript」)
}キャッチ(e){
アラート(電子メッセージ);
}
}
89. ネイティブ JavaScript は金額大文字変換関数を実装します
次のようにコードをコピーします。
関数transform(tranvalue) {
試す {
変数 i = 1;
var dw2 = new Array("", "10,000", "100 million");
var dw1 = new Array("十", "百", "千");
var dw = new Array("zero", "one", "two", "three", "four", "five", "lu", "seven", "eight", "nine"); //Integer部分的に使用
//以下は小文字から大文字に変換され、合計大文字のテキストボックスに表示されます
//整数と小数を分ける
var ソース = スプリット(tranvalue);
var num = ソース[0];
var dig = ソース[1];
//整数部分を変換する
var k1 = 0; //小さな単位
var k2 = 0; //大きな計算単位
変数合計 = 0;
var str = "";
var len = source[0].length; // 整数の長さ
for (i = 1; i <= len; i++) {
var n = source[0].charAt(len - i); // 特定の桁の数値を取得します。
varbn = 0;
if (len - i - 1 >= 0) {
bn = source[0].charAt(len - i - 1); // 特定の桁の前の数値を取得
}
合計 = 合計 + 数値(n);
if (合計 != 0) {
str = dw[Number(n)].concat(str); // 数値に対応する大文字の数値を取得し、str 文字列の前に挿入します。
if (n == '0') 合計 = 0;
}
if (len - i - 1 >= 0) { //数値の範囲内
if (k1 != 3) { //小さなユニットを追加
if (bn != 0) {
str = dw1[k1].concat(str);
}
k1++;
} else { //小さなユニットを追加せず、ユニットを増やしてください
k1 = 0;
var temp = str.charAt(0);
if (temp == "10,000" || temp == "100 million") //ラージユニットの前に数値がない場合、ラージユニットは破棄されます。
str = str.substr(1, str.length - 1);
str = dw2[k2].concat(str);
合計 = 0;
}
}
if (k1 == 3) //小さい単位が 1,000 に達すると、大きい単位は 1 つ増加します。
{
k2++;
}
}
//小数部を変換
var strdig = "";
if (ディグ != "") {
var n = dig.charAt(0);
if (n != 0) {
strdig += dw[Number(n)] + "角度";
}
var n = dig.charAt(1);
if (n != 0) {
strdig += dw[Number(n)] + "分";
}
}
str += "元" + strdig;
} キャッチ(e) {
「0元」を返します。
}
文字列を返します。
}
//整数と小数を分割する
関数の分割(tranvalue) {
var 値 = 新しい配列('', '');
temp = tranvalue.split(".");
for (var i = 0; i < temp.length; i++) {
値[i] = 温度[i];
}
戻り値;
}
90. ネイティブ JavaScript で一般的に使用される正規表現の大規模なコレクション
次のようにコードをコピーします。
漢字に一致する正規表現: [/u4e00-/u9fa5]
2 バイト文字 (漢字を含む) に一致: [^/x00-/xff]
空の行に一致する正規表現: /n[/s| ]*/r
HTML タグに一致する正規表現: <(.*)>.*<///1>|<(.*) //>
先頭と末尾のスペースに一致する正規表現: (^/s*)|(/s*$)
IP アドレスに一致する正規表現: /(/d+)/.(/d+)/.(/d+)/.(/d+)/g
電子メール アドレスに一致する正規表現: /w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*
URL に一致する正規表現: http://(/[/w-]+/.)+[/w-]+(/[/w- ./?%&=]*)?
SQL ステートメント: ^(select|drop|delete|create|update|insert).*$
負でない整数: ^/d+$
正の整数: ^[0-9]*[1-9][0-9]*$
正でない整数: ^((-/d+)|(0+))$
負の整数: ^-[0-9]*[1-9][0-9]*$
整数: ^-?/d+$
非負の浮動小数点数: ^/d+(/./d+)?$
正の浮動小数点数: ^((0-9)+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9] ] */.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正の浮動小数点数: ^((-/d+/./d+)?)|(0+(/.0+)?))$
英語の文字列: ^[A-Za-z]+$
英語の大文字文字列: ^[AZ]+$
英語の小文字の文字列: ^[az]+$
英字および数字列: ^[A-Za-z0-9]+$
英数字と下線の文字列: ^/w+$
メールアドレス: ^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$
URL: ^[a-zA-Z]+://(/w+(-/w+)*)(/.(/w+(-/w+)*))*(/?/s*)?$または: ^http:////[A-Za-z0-9]+/.[A-Za-z0-9]+[//=/?%/-&_~`@[/]/': +!]*([^<>/"/"])*$
郵便番号: ^[1-9]/d{5}$
電話番号: ^((/(/d{2,3}/))|(/d{3}/-))?(/(0/d{2,3}/)|0/d{2, 3}-)?[1-9]/d{6,7}(/-/d{1,4})?$
携帯電話番号: ^((/(/d{2,3}/))|(/d{3}/-))?13/d{9}$
全角文字(漢字含む):^/x00~/xff
先頭と末尾のスペースを一致させます: (^/s*)|(/s*$)
HTML タグと一致します: <(.*)>.*<///1>|<(.*) //>
空行に一致: /n[/s| ]*/r
情報内のネットワーク リンクを抽出します: (h|H)(r|R)(e|E)(f|F) *= *('|")?(/w|//|//|/.)+ ('|"| *|>)?
メッセージ内の電子メール アドレスを抽出します: /w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*
メッセージ内の画像リンクを抽出します: (s|S)(r|R)(c|C) *= *('|")?(/w|//|//|/.)+('|" |*|>)?
メッセージ内の IP アドレスを抽出します: (/d+)/.(/d+)/.(/d+)/.(/d+)
メッセージ内の中国の携帯電話番号を抽出します: (86)*0*13/d{9}
メッセージ内の中国の固定電話番号を抽出します: (/(/d{3,4}/)|/d{3,4}-|/s)?/d{8}
メッセージから中国の電話番号 (携帯電話と固定電話を含む) を抽出します: (/(/d{3,4}/)|/d{3,4}-|/s)?/d{7,14}
情報内の中国の郵便番号を抽出します: [1-9]{1}(/d+){5}
情報内の浮動小数点数 (つまり、10 進数) を抽出します: (-?/d*)/.?/d+
メッセージから任意の数値を抽出します: (-?/d*)(/./d+)?
IP: (/d+)/.(/d+)/.(/d+)/.(/d+)
電話市外局番: ^0/d{2,3}$
Tencent QQ 番号: ^[1-9]*[1-9][0-9]*$
口座番号 (文字で始まり、5 ~ 16 バイト、英数字のアンダースコアを使用可能): ^[a-zA-Z][a-zA-Z0-9_]{4,15}$
中国語、英語、数字、下線: ^[/u4e00-/u9fa5_a-zA-Z0-9]+$
91. ネイティブ JavaScript はフォーム変更イベントのサイズ変更操作を実装します (すべてのブラウザーと互換性があります)
次のようにコードをコピーします。
(関数(){
var fn = 関数(){
var w = document.documentElement : document.body.clientWidth ?
、r = 1255
,b = Element.extend(document.body)
,クラス名 = b.クラス名;
if(w < r){
//フォームの幅が1255未満の場合、対応する操作を実行します
}それ以外{
//フォームの幅が 1255 より大きい場合に、対応する操作を実行します。
}
}
if(window.addEventListener){
window.addEventListener('resize', function(){ fn(); });
}else if(window.attachEvent){
window.attachEvent('onresize', function(){ fn(); });
}
fn();
})();
92. ネイティブ JavaScript は通常のルールを使用してスペースをクリアし、左右に分割します
次のようにコードをコピーします。
function ltrim(s){return s.replace(/^(/s *| *)/、 "");
function rtrim(s){return s.replace(/(/s *| *)$/、 "");
function trim(s){return ltrim(rtrim(s));}
93.ネイティブJavaScriptは、変数がnullかどうかを決定します
次のようにコードをコピーします。
/**
*変数が空であるかどうかを判断します
*未定義、null、 ''、false、0、[]、{}すべてがtrueを返し、それ以外の場合はfalseを返します
*/
function empty(v){
switch(typeof v){
ケース「未定義」:trueを返します。
ケース '文字列':if(trim(v).length == 0)true;
ケース「ブール」:if(!v)true;
ケース「番号」:if(0 === v)true;
ケース「オブジェクト」:
if(null === v)trueを返します。
if(undefined!== v.length && v.length == 0)trueを返します。
for(v in v){return false;} return true;
壊す;
}
false を返します。
}
94。ネイティブJavaScriptは、Base64デコードを実装しています
次のようにコードをコピーします。
関数base64_decode(data){
var b64 = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789+/=";
Var O1、O2、O3、H1、H2、H3、H4、BITS、I = 0、AC = 0、DEC = ""、TMP_ARR = [];
if(!data){return data}
データ += '';
する {
h1 = b64.indexof(data.charat(i ++));
H2 = b64.indexof(data.charat(i ++));
H3 = b64.indexof(data.charat(i ++));
h4 = b64.indexof(data.charat(i ++));
bits = << 18 |。
O1 =ビット>> 16&0xff;
O2 =ビット>> 8&0xff;
O3 =ビット&0xff;
if(h3 == 64){
tmp_arr [ac ++] = string.fromcharcode(o1);
} else if(h4 == 64){
tmp_arr [ac ++] = string.fromcharcode(o1、o2);
} それ以外 {
TMP_ARR [AC ++] = String.FromCharCode(O1、O2、O3);
}
} while(i <data.length);
dec = tmp_arr.join( '');
dec = utf8_decode(dec);
12月を返します。
}
95。ネイティブJavaScriptはUTF8デコードを実装しています
次のようにコードをコピーします。
function utf8_decode(str_data){
var tmp_arr = []、i = 0、ac = 0、c1 = 0、c2 = 0、c3 = 0; str_data += '';
while(i <str_data.length){
c1 = str_data.charcodeat(i);
if(c1 <128){
tmp_arr [ac ++] = string.fromcharcode(c1);
i++;
} else if(c1> 191 && c1 <224){
c2 = str_data.charcodeat(i + 1);
tmp_arr [ac ++] = string.fromcharcode(((c1&31)<< 6)|(c2&63));
i += 2;
} それ以外 {
c2 = str_data.charcodeat(i + 1);
c3 = str_data.charcodeat(i + 2);
tmp_arr [ac ++] = string.fromcharcode(((c1&15)<< 12)|((c2&63)<< 6)|(c3&63));
i += 3;
}
}
tmp_arr.join( '')を返します。
}
96。ネイティブJavaScriptは、形式の可視範囲の幅と高さを取得します
次のようにコードをコピーします。
function getViewSize(){
var de = document.documentlement;
var db = document.body;
var vieww = de.clientwidth == 0?
var viewh = de.clientheight == 0?
return array(vieww、viewh);
}
97。ネイティブJavaScriptはIEバージョン番号を決定します(簡潔と後方互換!)
次のようにコードをコピーします。
var _ie =(function(){
var v = 3、div = document.createelement( 'div')、all = div.getelementsbytagname( 'i');
その間 (
div.innerhtml = '<! - [gt ie' +(++ v) + ']> <i> </i> <![endif] - >'、
すべて[0]
);
v> 4を返しますか?
}());
98。ネイティブJavaScriptを使用してブラウザバージョン番号を取得します
次のようにコードをコピーします。
function browserversion(タイプ){
var other = 1;
(私はタイプの){
var v = types [i] [i]:i;
if(useragent.indexof(v)!= -1){
var re = new regexp(v + '(////1.//s|:)(]」(]' +) '、' ig ');
var matches = re.exec(useragent);
var ver = matches!= null?
その他= ver!== 0 && v!= 'mozilla'?
} それ以外 {
var ver = 0;
}
eval( 'browser。' + i + '= ver');
}
browser.other = other;
}
99。ネイティブJavaScriptの半幅から全幅関数
次のようにコードをコピーします。
関数todbc(str){
var result = '';
for(var i = 0; i <str.length; i ++){
code = str.charcodeat(i);
if(code> = 33 && code <= 126){
result + = string.fromcharcode(str.charcodeat(i) + 65248);
} else if(code == 32){
result + = string.fromcharcode(str.charcodeat(i) + 12288-32);
}それ以外{
結果 += str.charat(i);
}
}
結果を返します。
}
100。ネイティブJavaScript全幅から半幅の関数
次のようにコードをコピーします。
関数tocdb(str){
var result = '';
for(var i = 0; i <str.length; i ++){
code = str.charcodeat(i);
if(code> = 65281 && code <= 65374){
result += string.fromcharcode(str.charcodeat(i)-65248);
} else if(code == 12288){
result + = string.fromcharcode(str.charcodeat(i)-12288 + 32);
}それ以外{
結果 += str.charat(i);
}
}
結果を返します。
}