JSの構文:
Javascriptの基本データ型:未定義/ nullを/ブール/数/文字列
複合データ型:オブジェクト
変数のデータ型を検出するためのtypeof
typeof演算は、2つの方法で使用します。
(1)typeof演算変数
(2)typeof演算(可変)
結果は未定義されているので、ヌル由来未定義== nullがtrueを返します
任意のデータタイプ、数()非数値に変換し、そのようなデータ変換を強制的に番号()によって実行される場合、いくつかのデータは、数値に変換できない存在であることができ、次いで、NaNを返し
するvar A =数(name_01)。
数値文字列を変換するための
VaRの B =のparseInt( "28px" ) するvar D = parseFloatは( "12.34.56px")。
私はあなたがString()を使用することができ、値がnullまたは未定義ではないかわからない、任意の型の値を文字列に変換することができます
VAR idstr = ids.toString()。 console.log(文字列(M))。
次いで、算術演算後、操作の残りの部分を追加することに加えて、最初のディジタル文字列に変換されますが、1つの文字列がある場合に効果がそれらの数スプライシングを増加することであるように、2件のデータが、追加されます
例えば:番号5及び演算用文字列「5」、結果は次の通りであった:550251
&&論理AND:
最初のオペランドが暗黙の型変換が真である場合、第2オペランドが返されます。
以前に該当する場合、操作は、最後の番号に戻ります。
最初のオペランドが暗黙の型変換がfalseである場合は、最初のオペランドが返されます。
ヌルがある場合は、nullを返します。
1が定義されていない場合、戻り値は不定。
NaNであった場合、NaNが返されます
||論理和(OR):
最初のオペランドが暗黙の型変換が真である場合は、最初のオペランドが返されます。
第一オペランドが偽の暗黙的な変換である場合、第二オペランドが順に戻されます。
二つの数がnullの場合、nullが返されます。
二つの数値が未定義している場合は、未定義返されます。
両方の数値がNaNをしている場合、NaNが返されます。
!論理否定
いずれにしてブール値を返します。
!!結果は再び論理否定を否定しました。
JS フロー制御文:
VAR年齢は(「あなたのパスワードを設定してください」プロンプト= ;) IF(年齢<18 ){ 警告(「あなたは大人ではありません」); } 他{ アラート(「古いあなたがいるよりも、自分のID番号を記入してください」) ; } IF(。!6 = age.length ){ アラート( "6桁のコードを入力してください" ); } 他{ IF (ますisNaN(年齢)){ アラート( "パスワードは6桁の数字でなければなりません" ); } 他{ アラート( "正しいパスワード" ); } }
NaNはNaNに==番号TYPEOF、タイプの数一種であります
VaRの週= 新しい。日付()getDayを(); VAR weekstr = "" ; console.log(週); // 0-6 // 多条件的判断スイッチ スイッチ(週){ ケース 0 : weekstr = "日" 。 休憩 ; // 退出 ケース 1 : weekstr = "一" 。 休憩; ケース 2 : weekstr = "二" 。 休憩; ケース 3: Weekstr = "3" ; BREAK ; ケース 4 : weekstr = "4" ; BREAK ; ケース 5 : weekstr = "5" ; BREAK ; デフォルト: weekstr = "6" ; } のdocument.write( "何日が今日です。" + weekstr);
forループをネストされました:
falseの場合、内側層の外側の層は行われません。
内層が偽であるときに行う、第一外層、次に実行内層を行います。
JSの機能:
ストップ機能は完了して終了関数の戻り値の直後に実行されます。
何の値が返り、次がない場合は、未定義のデフォルトを返します
非厳密モードでJS、あなたはパラメータの値を変更するために渡される引数を使用することができます
機能インナー(){ // 引数 はconsole.log(arguments.lengthを) はconsole.log([引数 1]); // インデックス開始0から正の整数である } インナー( 10,5 )、 機能追加(NUM1は、 NUM2){ 引数[ 0] = 99 ; にconsole.log(NUM1); } 追加( 55,88)
JS 組み込みオブジェクト[配列]。
2つの方法の配列を作成します:
新しい配列()
リテラルモード[]
arr.length配列の長さを取得
長さを設定することで、あなたは配列の末尾から項目を削除する、または新しいアイテムを追加することができます
統計賃金コード:
(1)ノンストップのユーザ入力は、ユーザが入力するまで、「終了」は「給与を入力して」いないだろう、従業員の賃金を受け取っているポップアップウィンドウ
(2)ユーザ入力データは、アレイに格納されます。
VaRの INPUT、ARR = []; 一方(INPUT = '出口'!{) INPUT( '従業員の給与を入力してください' =プロンプト); ARR [arr.length] = INPUT; } arr.length - = 1; // ありません預金'EXIT' のdocument.write(ARR)。
メソッドのスタック配列:
// 配列の端から追加プッシュ VARの色= 新しい新しいアレイ( "赤"、 "緑" ); VAR LEN = colors.push( "青"、 "黄"、 "ブランク" ) はconsole.log(LEN); / / ヘッドアレイから追加抜き VAR NUMSを= [2,7,8,6 ]; VARのサイズ= nums.unshift(99,66 ); // 配列の末端から除去POP、戻り値は除去素子 VAR N- = nums.pop(); にconsole.log(NUMS); // 配列から除去ヘッドシフト、戻り値は除去要素である VAR M = colors.shift(); にconsole.log(M)。
// 文字列に配列要素に参加 VAR NUMS = [2,4,5 、] VaRの STR = nums.join(); // 2,4,5- するvar語= [ "境界"は、 "左"、 "カラー" ]; // 境界左色 VAR wordstr = words.join(" - " ); はconsole.log(wordstr); // 逆順に配列逆要素 nums.reverse(); にconsole.log(NUMS) ; VARののSTR = [ "A"、 "B"、 "C"、 "D" ]; // 戻り列DCBAの VAR NewStrによってすでに= strs.reverse()のためには、( ""参加) (NewStrによってすでに用)にconsole.log。 // 29,5,24,17、32 ヴァール= ARR [9,23,15、-99,88,12、-2 ]; // ソート()配列要素は、フォーマット文字列によってソートするソートされ VAR _arr1 = [8,95,31,1,5 ]; にconsole.log(_arr1.sort()); // 出力1,31,5,8,95、要素が最初に、最初の文字列と比較して、文字列に変換されるので // 最初の場合同じ文字、第2文字の比較が継続 // 上記の場合について、以下の溶液 // リターンパラメータ1 <パラメータ2降順 arr.sort(関数(B)を{ 返す < Bを}); // 上昇リターンパラメータ1>パラメータ2 arr.sort(関数(A、B){ 戻り A> B}) はconsole.log(ARR)。
VAR newColors3 = colors.slice(-4,3)。// 1,3 console.log(newColors3)。
// コピー処理アレイ のvar A = [1、 "はい" ,. 3。、】 B; // 1、配列トラバーサル、プッシュ。 B = 新たな新しいアレイ() のために(VAR Iは= 0; I <a.length; I ++ ){ b.push(A [I]); } // 2、CONCAT() B = [] .concat(A); // 。3、スライス(); B = a.slice(0 ) にconsole.log (B)。
// スプライス戻り値は[]削除しない場合、エントリは、削除されている返品 するvar ARR = [ "A"、 "B"、 "C"、 "D"、 "E"、 "F" ]; //を削除、インデックス番号COUNTからの削除は、リターンは削除 // スプライス(インデックス、COUNT) // 0にCOUNTは削除されません。カウントが提供されていない、始まるインデックスから最後を削除するには VAR delArr arr.splice =(2、 3 ); // 挿入し、インデックスから削除、挿入をカウントするために... ITEM1 @ スプライス(インデックスカウント、ITEM1 ...) VAR insertArr arr.splice =(3,0、 "M"、「N- "88 ); // 置き換える VAR replaceArr arr.splice =(1,2、" X "" Y "" Z " ); はconsole.log(ARR) はconsole.log(replaceArr)。
VAR NUMS = [1,7,5,7,8,1,6,9 ]; // のindexOf(seachvalue、のstartIndex) // 配列内のアイテム、およびリターンの位置を見つけるために戻さ-1ない場合 VARの POS = NUMS .indexOf(7,2 ); // のlastIndexOf()を見つけるためにアレイの端から開始 VAR = POS nums.lastIndexOfを(1。); VAR POS = nums.indexOf(」7" ); はconsole.log(POS)。
indexOf()メソッドは、互換性の問題、解決策があります。
// のindexOf機能実現方法包装 関数ArrayIndexOf(ARR、値){ // ARR位置で発生する検出値 のために(varが I 0 =; I <arr.length; I ++ ){ IF(ARR [I] = == 値){ 返すIを; } } リターン -1 ; }