1.
これは DIV
2. 🎜>
w1 =1333333.99; 13663.38;
document.write(w1);
3. フォームチェック
//wanghui は、ビジネス アクセスと処理アドレスのポート番号をチェックする関数 checkPort() を 20031020 に追加しました。
function toChnDigit(num)
{
var t = parseInt(num) ;
if(t==0) は "0" を返します;
if(t==1) は "1" を返します;
if(t==2) は "2" を返します; (t==3) return "三";
if(t==4) return "四"; ) "6" を返す;
if(t==7) "7" を返す;
if(t==9) を返す;
return "";
}
//@CheckItem@ OPT-HuTie-20031208 最適化: すべてのボタンを無効にするパブリック関数を追加します
function disableAllButtons(){
for(var i = 0;i
if(tmp.type= = "ボタン" || tmp.type=="送信" ||tmp.type=="リセット"){
tmp.disabled = true;
}
}
/ /トリム関数を追加
String.prototype.trim = function()
{
return this.replace(/(^s*)|(s*$)/g, }
//関数名: checkNUM
//関数紹介: 数値かどうかをチェック
//パラメータの説明: チェックする数値
//戻り値: 1 は数値であることを意味します数値、0 は Number
function checkNum(Num) {
var i,j,strTemp;
if (Num.length == 0) ではないことを意味します。
return 0
for (i = 0;i
if (j == - 1) {
// 数値ではない文字があることを示します
return 0;
}
}
// 数値であることを示します
return 1;
}
//関数名: checkNUM
/ /関数紹介: 数値かどうかをチェック
//パラメータの説明: チェックする数値
//戻り値: 1 を意味しますこれは数値です。0 は数値ではないことを意味します
function checkIntNum(Num) {
var i,j,strTemp;
if ( Num.length == 0)
return 0
for (i = 0;i
if (j = = -1) {
//数値ではない文字があることを示します
return 0;
}
}
//説明は数値です
return
}
//関数名:checkEmail
//関数紹介:メールアドレスかどうかチェック
//パラメータ説明:チェック対象の文字列
//戻り値:0:そうでない1: はい
function checkEmail(a) {
//@CheckItem@ Bug141-hutie-20030821 インターフェイスの変更: 電子メール アドレスを指定する必要があります 中国語の検証を無効にします
var reg = /[^u0000-u00FF] /;
if(a.match(reg)!=null){
return 0;//中国語の文字があります
}
var i=a.length;
var temp = a.indexOf('@');
var tempd = a.indexOf('.');
if (temp > 1) {
if ((i-temp) > 3){
if ((i-tempd)>0){
return
}
}
}
return
}
//関数名: checkTEL
//関数紹介: 電話番号かどうかチェック
//パラメータ説明: チェックする文字列
//戻り値: 1 は正当、0 は不正
関数 checkTel (電話)
{
var i,j,strTemp;
strTemp = "0123456789- ()";
for (i =0;i
j = strTemp.indexOf(tel.charAt(i));
if (j==-1)
{
//不正な文字があることを示します
return 0 ;
}
}
// 文字が有効であることを示します
return 1;
}
// 関数名: checkLength
// 関数の紹介: 長さをチェックします文字列の
//パラメータの説明: チェックする文字列
//戻り値: 長さの値
function checkLength(strTemp)
{
var i ,sum; = 0;
for(i=0;i
//@CheckItem@ BUG-Renhj-20040604 最適化: 検証される関数 128 に変更して使用します単一の文字。「・」記号は避けてください
// if ((strTemp.charCodeAt(i)>=0) && (strTemp.charCodeAt(i)if ((strTemp.charCodeAt(i) ) >=0) && (strTemp.charCodeAt(i)sum = sum 1;
else
sum = sum 2;
return sum;
}
//関数名:checkSafe
//関数紹介:「'」、「"」、「」、「;」、「,」が含まれているかどうかをチェック
//パラメータの説明: チェックする文字列
//戻り値: 0: はい 1: いいえ
function checkSafe(a)
{
fibdn = new Array ("'", ' "',">", "i = fibdn.length;
j = a.length;
for (ii=0; ii{
for (jj=0;jj
temp1 = a.charAt(jj);
temp2 = fibdn[ii] ;
if (temp1==temp2)
{
return
}
}
return
}
//関数名: checkChar
//関数紹介: アルファベット以外の文字が含まれているかどうかをチェックします
//パラメータの説明: チェックする文字列
//戻り値: 0: 含む 1: すべての文字
関数checkChar( str)
{
var strSource ="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.()& ";
var i
for (i=0;i{
ch = str.charAt(i)
temp = strSource.indexOf(ch); )
{
return 0;
}
}
return 1;
}
//関数名: checkCharOrDigital
// 関数の紹介: が含まれているかどうかを確認します非数字または文字
//パラメータの説明: チェックされる文字列
//戻り値: 0: 含まれる 1: すべての数字または文字
function checkCharOrDigital(str)
{
var strSource = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.()& ";
var i;
ch = str.charAt(i); f (ch);
if (temp == -1)
{
return
}
}
return 1;
}
//関数名: check Chinese
//関数紹介: 漢字が含まれているかどうかをチェック
//パラメータ説明: チェックする文字列
//戻り値: 0: 含む 1: なし
関数 check Chinese(strTemp)
{
var i,sum;
for(i=0;i
if ((strTemp.charCodeAt(i)255))
return
}
return 1;
}
//関数名: CompareTime()導入: 時間サイズの比較
//パラメータの説明: begin Year 開始年、beginMonth 開始月、benginDay 開始日、beginH 開始時間、beginM 開始分、
// end Year 終了年、endMonth 終了月、endMonth 終了日、 endH 終了時間、endM 終了分
//戻り値: true は開始時間が終了時間より大きいことを意味し、false はその逆です
function CompareTime(begin Year,beginMonth,benginDay,beginH,beginM,end Year,endMonth ,endDay,endH,endM){
var date1 = new Date(begin Year,beginMonth-1,benginDay,beginH,beginM);
var date2 = new Date(end Year,endMonth-1,endDay,endH,endM); );
if(date1.getTime()>date2.getTime()){
return false;
}
//関数名: CompareDate ()
//関数の紹介: 日付のサイズを比較
//パラメータの説明: begin Year は年を開始し、beginMonth は月を開始し、benginDay は日を開始します
// end Year は年を終了し、endMonth は月を終了し、endMonth は年を終了しますday
//戻り値: 0: true は開始時刻が終了時刻より大きいことを意味し、false はその逆を意味します
function CompareDate(begin Year,beginMonth,benginDay,end Year,endMonth,endDay ){
var date1 = 新しい日付 (開始年,開始月-1,開始日);
var date2 = 新しい日付(終了年,終了月-1,終了日);
if(date1.getTime()> date2.getTime()) {
return false;
}
return true;
}
//関数名: checkUrl
//関数の紹介: URL が正当かどうかを確認します
//パラメータdescription: チェック対象の文字列
//戻り値: true: 合法 false: 違法。
function checkURL(strTemp)
{
if(strTemp.length==0) return false;
if(check Chinese(strTemp)==0) false を返します。
if (strTemp.toUpperCase().indexOf("HTTP://") != 0 && strTemp.toUpperCase().indexOf("HTTPS://") != 0){
return false;
}
true を返します。
}
// @CheckItem@ OPT-Renhj-20030704 提供されるパブリックな空格解除メソッド
//左边空格を清算
function js_ltrim(deststr)
{
if(deststr) ==null)「」を返します;
var pos=0;
var retStr=新しい文字列(deststr);
if (retStr.length==0) retStr を返します。
while (retStr.substring(pos,pos 1)==" ") pos ;
retStr=retStr.substring(pos);
return(retStr);
}
//清除右边空格
function js_rtrim(deststr)
{
if(deststr==null)return "";
var retStr=新しい文字列(deststr);
var pos=retStr.length;
if (pos==0) retStr を返します。
while (pos && retStr.substring(pos-1,pos)==" " ) pos--;
retStr=retStr.substring(0,pos);
return(retStr);
}
//清除左边和右边空格
function js_trim(deststr)
{
if(deststr==null)return "";
var retStr=新しい文字列(deststr);
var pos=retStr.length;
if (pos==0) retStr を返します。
retStr=js_ltrim(retStr);
retStr=js_rtrim(retStr);
retStr を返します;
}
//格式化入の日期串、入入の例:"2003-9-12" 出出:"2003-09-12"
function formatDateStr(inDate){
if ( inDate==null||inDate=="") "" を返します。
var beginDate = inDate.split("-");
var myear=beginDate[0];
var mMonth=beginDate[1];
var mDay=beginDate[2];
mMonth=((mMonth.length==1)?("0" mMonth):mMonth);
mDay=((mDay.length==1)?("0" mDay):mDay);
m Year "-" mMonth "-" mDay を返します。
}
//wanghui 20031020 によって追加されました 检查URL アドレスのポートの正当性、65535 未満の数字である必要があります
function checkPort(inValue1,inValue2){
//先查最初のパラメータ正当性。2 番目のパラメータが null の場合、最初のパラメータは短信业务の '业务処理地址'を示します。
if(inValue1 != null && inValue1.value != ""){
var array1 = inValue1.value.split(":");
if(array1.length >=4){ //':' 分割数の長さが 4 の場合、':' が 2 つあるため、不正です。
if(inValue2==null) alter("ビジネス処理アドレス ポート形式エラー");
else warning("ビジネス アクセス アドレス ポート形式エラー");
inValue1.focus(); false を返します;
}
if(array1.length >= 3) {
port1 = array1[2];
if ((pos1 = port1.indexOf("/")) > = 0){ //ポートの後に「/」があるかどうかを確認します。ある場合は、この記号の前のポートがポートです。
port1 = port1.substring(0,pos1)
}
if ( port1 == "" || checkIntNum(port1) == 0 || port1>65535){
if(inValue2 == null) warning("ビジネス処理アドレス ポートは数値である必要があり、65535 より大きくすることはできません");
else warning ("ビジネス アクセス アドレス ポートは数値である必要があり、65535 より大きくすることはできません");
inValue1.focus();
return false;
}
}
}
// 2 番目のパラメータの正当性を再確認します
if(inValue2 != null && inValue2.value != ""){
var array2 = inValue2.value.split(": ");
if(array2.length >=4){
alert("業務処理アドレス ポート形式エラー");
inValue2.focus();
return false;
}
if(array2.length >= 3) {
port2 = array2[2];
if ((pos2 = port2.indexOf("/")) >= 0){
port2 = port2.substring(0,pos2 )
}
if ( port2 == "" || checkIntNum(port2) == 0 || port2>65535){
alert("業務処理アドレスポートは数値である必要があり、65535 より大きくすることはできません") ;
inValue2.focus();
return false;
}
}
}
return true;
}
//obj: データ オブジェクト
//dispStr: 失敗プロンプトの内容表示文字列
function checkUrlValid( obj, dispStr)
{
if(obj == null)
{
alert("受信オブジェクトは空です" );
return false;
var str = obj.value;
var urlpatern0 = /^https?:// i;
if(!urlpatern0.test( str))
{
alert(dispStr "不正: 'http://' または 'https://' で始まる必要があります!"); >obj.focus();
return false;
}
var urlpatern2= /^https?://(([a-zA-Z0-9_-]) (.)?)*( :d )?. $/i;
if(!urlpatern2.test(str))
{
alert(dispStr "ポート番号は 1 ~ 65535 である必要があります!") ;
obj.focus();
return false;
var urlpatern1 =/^https?://(([a-zA-Z0-9_-]) )*(:d )?(/((. )?(?)?=?&?[a-zA-Z0-9_-](?)?)*)*$/i; urlpatern1.test(str))
{
alert(dispStr "不正です。確認してください!");
return false; = "0";
var t = 0;
var re = new RegExp(":\d ","ig"); null)
{
s = str.substring(RegExp.index 1,RegExp.lastIndex);
if(s.substring(0,1)=="0")
{
alert(dispStr "ポート番号を 0 で始めることはできません!");
obj.focus();
t = parseInt(s); t65535)
{
alert(dispStr "ポート番号は 1 ~ 65535 でなければなりません!"); >return false;
}
}
return true;
}
//関数名:checkVisibleEnglishChr
//関数紹介:英語文字が表示できるかどうかを確認します(!"# $%&'()*,-./0123456789: ;?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~)
//パラメータの説明: チェックする文字列
//戻り値: true|false
//renhj 2004.01.05 によって追加
function checkVisibleEnglishChr(strTemp)
{
var i;
for(i=0;i
if (( strTemp.charCodeAt(i)126))
return false
}
return; true;
}
//関数名: checkInputChr
//関数紹介: 非入力文字が含まれているかどうかをチェックします
//パラメータの説明: チェックする文字列
//Return値: false: true を含む: すべての文字が入力可能
//renhj によって追加 2004.01.05
function checkInputChr(str)
{
var notinput = ""'";
var i;
for (i = 0 ; notinput != null && i if (str.indexOf(notinput.charAt(i)) >= 0 ) {//If any
return false;
}
}
return true;
}
//関数名: checkTelExt
// 関数の紹介: かどうかを確認しますは電話番号で内線番号はありません
//パラメータの説明 : チェックする文字列
//戻り値 : 1 は正当、0 は不正
function checkTelExt(tel)
{
var i,count,isNumber;
count = 0; //複数の連続する数値文字列があります
isNumber = 0; //for (i=0;i
// 現在の Is 番号を判定
if(checkIntNum(tel.charAt(i)) == 1)
{
if(isNumber == 0)
{
カウント = カウント 1;
}
isNumber = 0;
}
if (カウント > 2) 🎜>{
//一部の文字が不正であるか、内線番号が
return 0;
}
}
if((checkIntNum(tel.charAt(0)) == 1 )&&
(checkIntNum(tel.charAt(tel.length- 1)) == 1)){
//それは合法であることを意味します
return 1;
//不正な文字があることを意味します
return 0
}
}
//関数名: checkFormdata
//関数紹介: Check Form オブジェクト
//パラメータ説明:
//obj: チェック対象のオブジェクト、
//name: チェック対象オブジェクトの中国語名、
//length: チェックされるオブジェクトの長さ (//notnull: true の場合、null でないことがチェックされます。 ,
//notSpecChar: true の場合、特殊文字があるかどうかがチェックされます。
//notChinessChar: true の場合、中国語の文字があるかどうかをチェックします。
//pNumber: true の場合、チェックは正の整数のみ可能です。
//戻り値: false: チェックは失敗します。 true: すべての文字を入力できます。
//add by renhj 2004.03.19
//@CheckItem@ BUG:1641: 718-Renhj-20040902-Add5 チェックデジット情報を変更
function checkFormdata(obj,name,length,notnull,notSpecChar,notChinessChar, numOrLetter,pNumber){
//Check object
if (!obj ) {alert("ターゲットはオブジェクトではないため、処理に失敗しました!");
var msg; var ilen;
//中国語の文字を検出します
if (notChinessChar&&(check Chinese(obj.value ) != 1)){
msg=name "中国語の文字は使用できません!"
alert(msg) );
obj.focus();
return
}
//特殊文字を検出します
if(notSpecChar&&(!checkInputChr(obj.value))){
var notinput = ""'";
msg=name "不正な文字 (" notinput ")! ";
alert(msg);
obj.focus();
return false;
}
//長さをチェック
if(length>=0&&(checkLength(obj. value)>length)){
ilen=length/2;
if(pNumber){
msg=name "" length " の数値を超えることはできません! ";
}else if(notChinessChar){
msg=name "「長さ」を超えることはできません 英語の単語! ";
}else{
msg=name "「 length 」英語または「 ilen 」中国語文字を超えることはできません。 ";
}
alert(msg);
obj.focus();
return false;
}
//null 以外を検出
if(notnull&&obj.value = =""){
msg="「名前」を入力してください! ";
alert(msg);
obj.focus();
return false;
}
//検出できるのは数字または英文字のみです
re = /[ W_ ]/;
if (numOrLetter&&re.exec(obj.value)) {
msg=name "は数字または英文字のみです。 ";
alert(msg);
obj.focus();
return false;
}
//検出できるのは正の整数のみです
re = /[ D_]/ ;
if (pNumber&&re.exec(obj.value)) {
msg=name "は正の整数のみです。 ";
alert(msg);
obj.focus();
return false;
}
return true;
}

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

私はあなたの日常的な技術ツールを使用して機能的なマルチテナントSaaSアプリケーション(EDTECHアプリ)を作成しましたが、あなたは同じことをすることができます。 まず、マルチテナントSaaSアプリケーションとは何ですか? マルチテナントSaaSアプリケーションを使用すると、Singの複数の顧客にサービスを提供できます

この記事では、許可によって保護されたバックエンドとのフロントエンド統合を示し、next.jsを使用して機能的なedtech SaaSアプリケーションを構築します。 FrontEndはユーザーのアクセス許可を取得してUIの可視性を制御し、APIリクエストがロールベースに付着することを保証します

JavaScriptは、現代のWeb開発のコア言語であり、その多様性と柔軟性に広く使用されています。 1)フロントエンド開発:DOM操作と最新のフレームワーク(React、Vue.JS、Angularなど)を通じて、動的なWebページとシングルページアプリケーションを構築します。 2)サーバー側の開発:node.jsは、非ブロッキングI/Oモデルを使用して、高い並行性とリアルタイムアプリケーションを処理します。 3)モバイルおよびデスクトップアプリケーション開発:クロスプラットフォーム開発は、反応および電子を通じて実現され、開発効率を向上させます。

JavaScriptの最新トレンドには、TypeScriptの台頭、最新のフレームワークとライブラリの人気、WebAssemblyの適用が含まれます。将来の見通しは、より強力なタイプシステム、サーバー側のJavaScriptの開発、人工知能と機械学習の拡大、およびIoTおよびEDGEコンピューティングの可能性をカバーしています。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 中国語版
中国語版、とても使いやすい

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

Dreamweaver Mac版
ビジュアル Web 開発ツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。
