VUE3.0をすばやく開始する方法:
関連する推奨事項を入力して学習する:JavaScriptチュートリアル
クライアントブラウザで実行される
すべてのブラウザには、エンジンスクリプト言語を解析するJavaScriptがあります。コンパイルする必要はありません。ユーザーとHTML要素を制御し、ページを動的にすることで直接解析および実行できます。 。
名前:c-、後で改名:Scriptease
1995年、Netscapeはクライアント側のスクリプト言語:Livescriptを開発しました。その後、Sunの専門家がLivescriptを変更し、JavaScriptに名前を付けるよう招待されました
1996年、MicrosoftはJavaScriptをコピーし、JScript言語を開発しました。
1997年、ECMA(European Computer Manufacturers Association)は、クライアント側のスクリプティング言語であるECMAScriptの標準を策定しました。これは、すべてのクライアント側のスクリプト言語のエンコーディング方法を統合します。
+
javascriptのユニークなもの(bom + dom)
b
C.Event駆動型
D.Weakタイプ
e
f
<script>
<script> 和</script>
JavaScriptにどこから起動して終了するかを伝えます。
<script> 和</script>
の間のコードは、javascript
<script = "text/javascript" src = {request.contextpath} /static/js/homepage.js "> </scrip>
window.alert()document.write()innerhtml
console.log()console.log()は、f12コンソールを介して出力コンテンツ
console.log()
表示できます。
//これはコードです:単一文のコメント、通常はエディターのCtrl + Lキーです。
/*これはコードです*/:マルチラインコメント、通常はエディターのCtrl + Shift + Lキーです。
の
var test;
var age、sex; //年齢、名前、性別の3つの変数を宣言します
。 ";
1。文字、数字、アンダースコア、シンボルで構成されています。数字から始めることはできません。
2。たとえば、キーワードを使用できません
3。ケースに敏感な仕様:従来のライティング方法
1。変数名は意味がある必要があります。
2。キャメルケースの命名法の最初の文字は、データ型など、次の単語の最初の文字が含まれて
Number类型、String类型、Boolean类型、Undefined类型、Null类型、Object类型
、ヌルタイプ
および
Number类型、String类型、Boolean类型、Undefined类型、Null类型、Object类型
。 // Decimal var num1 = 012; // octal var num2 = ox123; // hexadecimal
値範囲:
console.log(number.max_value); //最大値は5E-324Console.log(number.min_value); //最小値は1.7976931348623157E+308 INFINITY:INFINITY:-INFINITY
数値判断は偏見を使用してデシマルを検証することができず、NANを使用してNAN(NAN ----は数ではない)を確認することはできませんが、イスナナナンを使用できます- 数字の結果ではありませんか?
など:
var num; //変数、割り当てられていないConsole.log(isnan(num))を宣言します。 //本当ではありませんか? 結果はTrue
String String Character:
Escape Sequence | Character |
---|---|
bbackspace | |
fpaper | Feed |
nline | Feed |
rcarriage | Return |
thorizontal Tab(ctrl-i) | |
' | 単一Quote |
" | double quotes |
double slashes |
eg:
var str = "iam a pm \" console.log(str); // iam a pm
string concatenation:
var str1 = "mr。"; var str2 = "hello"; console.log(str1+str2); //上記の
スプライシングと数字の結果である場合
、2つの属性true/false
2.2.4
割り当てなしで宣言され、変数は宣言された場合にのみ、デフォルトは未定義です。
例:
var num; console.log(num); //未定義
. Nullは、変数の値を手動で設定する必要
ます
。
例:
var num1 = number( "10"); console.log(num1); // 10var num2 = number( '10adbdn'); console.log(num2); // nanvar num3 = number( "10.78"); console.log(num3); //10.78var num4 = number('10 .65dd '); console.log(num4); // nanvar num5 = number( "a10"); console.log(num5); // nan(2)、parseint()は、
var num1 = parseint( "10"); console.log(num1)
などの整数に変換します。
// 10var num2 = parseint( '10adbdn'); console.log(num2); // 10var num3 = parseint( "10.78"); console.log(num3); // 10var num4 = parseint('10 .65dd '); console.log(num4); // 10var num5 = parseint( "a10"); console.log(num5); // nan(3)、parsefloat()
を10
進数に変換します。
// 10var num2 = parsefloat( '10adbdn'); console.log(num2); // 10var num3 = parsefloat( "10.78"); console.log(num3); // 10var num4 = parsefloat('10 .65dd '); console.log(num4);// 10var num5
=
parsefloat( "a10"); console.log(num5);
number()は、parseint()およびparsefloat()よりも厳しいです。
(
)に似ています
例:
var num = 10; console.log(num.tostring()); //文字列10
(2)、string()
例:
var num1 = 5; console.log(string(num1)); // string 5
(2)、json.stringfy()
空の文字列、null、nudefined、nanはfalseに変換され、他のものはtrueに変換されます
例:
var num1 = boolean(0); console.log(num1); // falsevar num2 = boolean( ""); console.log(num2); // falsevar num3 = boolean(null); console.log(num3); / falsevar num4 = boolean(undefined); console.log(num4); // falsevar num5 = 10; var num6; console.log(boolean(num5+num6)); / false
タイプ:算術演算子、リレーショナル演算子、論理演算子
(1)、算術演算子: "+" " - " "*"/ ""% "
算術式:算術演算子によって接続された式
(2)。
化合物動作式:複合演算子
、リレーショナル演算子によって接続された式(3): ">" "<" "> =" "<=" " " " =" "!=" "!=="
リレーショナル操作表現:リレーショナル演算子
論理操作式:(4)、論理演算子: "" || "!"
式1 &&式2
論理演算子によって接続されています
そのうちの1つが誤っている場合、
式1 ||
それらの1つが真実である場合、結果全体
がが誤りであり、結果全体が誤りです。
式の結果は偽りであり、結果全体
の優先順位プライアー
です
算術演算子は * /%、そして + -
リレーショナル演算子>> = <<=
平等オペレーター==!= ===!==
論理演算子の後に||が続きます
割り当て
オペレーター
オブジェクトは、名前/値のペアのコレクションであり、プロトタイプオブジェクトへの接続が隠されています。オブジェクトリテラルによって生成されたオブジェクトは、object.prototypeに接続されています。関数オブジェクトはfunction.prototype(それ自体がobject.prototypeに接続されている)に接続されています。
各関数には、
作成されたときに2つの非表示属性があります。関数の動作を実装するコード
{ここに実行されるコードです}
括弧内には、コンマで区切られた引数を含めることができます:
argument1
、argument2、…)
関数によって実行されたコードは、巻き毛の装具内に配置されます。
実行するコード}
関数パラメーターは、関数定義にリストされている名前です。
関数
の関数が呼び出されたときに関数によって受信される実際の値です
。 var result = num1 + num2;console.log( "num1
+
num2=
" + result);} // call sum(10、20);
//ここに書かれた関数だけでなく、すべての可変出力などが直接sum()}を実行
ます
構文: Reg = /pattern/modifiers;
2つのフォワードスラッシュで構成されています。 。 2番目のフォワードスラッシュの後、Global Match |
var reg = /box /gi;
コンストラクタ。構文Reg = new RegExp( pattern , modifiers );
どのように作成しても、それは同じパターンテンプレート、一致するコンテンツ、および修飾子です。
new | regexp |
( | " |
box | " |
---|
"gi");
regexp一致する文字列が最初に | |
string.replace(reg、newtr) | が最初に表示される位置は、regexpマッチング結果をNewsTRに置き換え、新しい文字列 |
string.split | (reg) | を返します
。 str = 'a1b2c3a4a5'、 reg = /a /g; console.log(str.match(reg)); reg = /a /;console.log(str.search(reg(reg)); reg = /a /g;console.log(str.replace(reg、function(){ console.log(arguments); return 5555;}))); var str = 'a、b、c、d'、 reg =/、/g; // console.log(str.split( '、')); reg))// ["a"、 "b"、 "c"、 "d"]
regexp.exec | ( |
---|---|
文字列) | 文字列で一致する検索を実行し、最初の一致する結果を返しますArray |
regexp.test(文字列) | は、真またはfalseモディファイ因子を返し |
ます
m
iignoreケースマッチング。
GはGlobalで一致します。最初の要素のみが一致し、一致することはありません。
は、var patterを一致させるマルチ
ラインマッチングを実行します
、正規表現で特別な意味を持つ特殊文字です。
特別な翻訳文字。
. 单个任意字符,除了换行符n与制表符r Escape Character、普通のシンボルに特別な意味を持つエスケープシンボル:文字 bワード境界((単語)alphanumeric_
を
除くすべての単語境界)
//;/match/var str = '\'; var reg = //g; log(reg.test(str)
日付オブジェクトは、日付と時刻に関連するオブジェクトです。これは動的であり、新しいキーワードを使用して、次のようなインスタンスを作成する必要があります。
var mydata = new date();
日付オブジェクトは直接アクセスプロパティを提供せず、次の表に示すように、日付を取得および設定する方法のみを提供します
JavaScriptによって提供されるストリングオブジェクトです。
プロパティの長さ - 文字列内の文字の数を返します。
注:漢字もキャラクターです! !
プロパティ:
数学オブジェクト方法:
三角関数(sin()、cos()、tan()、asin()、acos()、atan()、atan2())ラジアンの値を返す値。 Math.pi / 180または他の方法で分割することにより、ラジアンを学位に変換できます。
メソッド | Math.Abs |
---|---|
( | x |
) | x |
の | 絶対値を |
返し | ます |
xのarcsine.asinh | |
、 | xの |
逆 | |
の | 双曲線を返します。 |
X | の |
逆双曲線の接線 | |
( | X |
、 | Y) |
. | |
Math.clz32(x) | Returns the number of leading zeroes of a 32-bit integer. |
Math.cos(x) | returns the cosine of x. |
Math.cosh(x) | returns the hyperbolic value of x Cosine value. |
Math.exp | |
( | |
x) | xは引数であり、eがオイラーの定数(2.718…)である場合、 |
expm1(x)は | exp(x)-1の値を返します。 |
x未満の最大の整数を返します。 | |
Math.hypot | |
(X [、…]] | ) |
の | 最寄りのフロート表現を返します。 |
x | ) |
の | 乗算 |
の | 結果。 |
ln) | |
base | 10 of |
( | |
x | ) |
) | 最大値は0から |
math.min([、y [、…]])を | 0から複数の値 |
( | x、y) |
Y Power.random | |
()は、 | 0から1の間の擬似ランダム数を返しますが、 |
Math.round(x)は | 丸い整数を返します |
) | |
は-4 | |
math.sign(x) | xの符号関数を返します。これは、xが正、負、または0であるかどうかを決定し |
ます | 。 |
xの双曲線のサイン値 | |
( | x |
) | x |
の | 平方根を返します |
。 |
)
文字 | 列「数学」を |
返し | ます |
。
、max){ min + math.random() *(max -min);}
例2:文字列文字のランダムな文字列には、関数を書き込みます。
関数getRandomint(min、max){ return min + math.floor(math.random() *(max -min + 1));} function randomstr(n){ var dict = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ'; var str = ''; for(i = 0; i <n; i ++){ str += dict [getRandomint(0,62)]; } return str;} var str = getrandstr(10); console.log(str
;
1。2次元配列のエッセンスは、配列内の要素も配列であることです。
arr
= [1,2]、[a
、b]];
starting from 0 The starting non-contiguous index of the array.スパースアレイでは、長さの属性値は一般に、実際の要素数よりも大きくなります(まれ)
例
var a = ["a"、 "b" ,, "c" ,,];
アレイ
属性 | は、 |
---|---|
アレイ | の長さ、つまりその中の要素の数を表し |
ます |
は
、
オブジェクト | タイプ |
の | プロトタイプへの参照を返します。 |
/配列の長さを増やすと、長さの属性は可変アラート(arr.length)
です
。
プロトタイププロパティはオブジェクトに共通しています。
ObjectName.Prototype
ObjectNameパラメーターはオブジェクトオブジェクトの名前です。
説明:プロトタイプ属性を使用して、オブジェクトのクラスの一連の基本関数を提供します。 オブジェクトの新しいインスタンスは、オブジェクトのプロトタイプに割り当てられた操作を「継承」します。
配列オブジェクトについては、次の例を使用して、プロトタイプ属性の使用を示します。
配列の最大要素値を返す配列オブジェクトにメソッドを追加します。これを達成するには、関数を宣言し、array.prototypeに追加して使用します。
function array_max(){ var i、max = this [0]; for(i = 1; i <this.length; i ++){ if(max <this [i]) max = this [i]; } return max;} array.prototype.max = array_max; var x = new array(1、2、3、4、5、6); var y = x.max(
)
;オブジェクト関数。
Object.Constructor //オブジェクトは、オブジェクトまたは関数の名前です。
説明:コンストラクター属性は、プロトタイプを持つすべてのオブジェクトのメンバーです。これらには、グローバルオブジェクトと数学オブジェクトを除くすべてのJScriptネイティブオブジェクトが含まれます。コンストラクター属性は、特定のオブジェクトインスタンスを構築する関数への参照を保持します。
例:
x = new String( "hi"); if(x.constructor == string)//プロセス(条件が真)。 //またはfunction myfunc {// function body。 } y = new myfunc; if(y.constructor == myfunc)//プロセス(条件が真)。
配列オブジェクトメソッド:その一部は、ECMAScript5の新しい機能です(IE678ではサポートさ
れ | て | |
い | ませ | |
ん | ) | |
---|---|---|
文字列に | ||
削除 | し、配列 | |
プッシュ | の最後の要素を返し、1つ以上の要素を配列の端に追加し、 | |
シフト() | 削除 | |
の | 順序を逆にします | |
配列の最初の要素を返す | ||
既存 | の配列から起動します。選択した要素を返します | |
sort() | sorts sorts | |
splice()splice() | 削除要素を削除し、アレイ | |
tosource | () | |
。 ) | 配列を文字列に変換して結果 | |
tolocalString() | を返します。アレイをローカル要素に変換し、結果を返します | |
unshiftは | 1つ以上の要素をアレイの先頭に追加し、 | |
Arrayの元の値 | を返します。 | オブジェクト |
foreach | ( | |
) | トラバース | |
アレイ | オブジェクト | |
マップ | | |
| | |
| | |
| |
indexof
(
) | アレイ |
取得 | |
concatの機能は、アレイ要素をスプライスしたものとして使用できることに注意してください。 、しかし、concatは元の配列を変更しません。
例:
var arr = [1,2,3,4,5]; arr.concat([10,11]、13); // [1,2,3,4,5,11,13] arr .concat([1、[2,3]]); // [1,2,3,4,5,1、[1,3]]
スライス
スライス(A、B)AおよびBは、アレイが位置bに閉じ込められ、左に閉じられ、右に開いていることを意味します数字は負の数字である場合、最後のa/b要素
var arr = [1,2,3,4,5]; arr.slice(1,3); // [2,3] arr。スライス(1); // [2,3,4、5] arr.slice(1、-1); // [2,3,4] arr.slice(-4、-3); // [2 ]
スプライス
スプライスは要素を削除し、配列に新しい要素を追加します
object.splice(a)は、左から要素を削除します
object.splice(a、b)は、位置aから始まるb要素を傍受します
object.splice(A、B、C、D)は、位置Aから始まるB要素を遮断し、SPLICEが元の配列
var arr = [1、]を変更することに注意する必要があります。
2 ,3,4,5];arr.splice(2);//[3,4,5]arr;//[1,2];The original array has been modified var arr=[1,2,3 、4、5]; arr.splice(2,2); // [3,4] arr; // [1,2,5]; var arr = [1,2,3,4,5]; arr .splice(1,1、 'a'、 'b'); // [2] arr; [1、 "a"、 "b"、3,4,5]
;
foreach()関数は、アレイを最初から最後まで通過します。 3つのパラメーターがあります。配列要素、要素のインデックス、および
var arr = [1、2、3、4、5];要素、要素のインデックス、配列自体console.log(x + '|' + index + '|' +(a === arr));}); // 1 | 0 | true // 2 | 1 | true// 3 | 2 | true // 4 | 3 | true // 5 | 4 | true
decose()
このアレイの[x1、x2、x3]に関数が適用されますIS:
[x1、x2、x3、x4] .reduce(f)= f(f(x1、x2)、x3)、x4)
var arr = [1、2、3]; var sum = arr.reduce (function(x、y){ x + y}、0);パラメーター0はオプションです。最初の2つの値の値は、計算結果です。 reduce(function(x、y){ console.log(x + "|" + y); x> yを返しますか?}); // 9 | 6max
;
アレイと一般的なオブジェクトは、 | |
---|---|
配列 | で | ある必要はありませんが、アレイ
が | インデックスを自動的に更新するよりも、|
配列と文字列の比較
で多数の配列操作方法を継承します |
類似
、
文字 | |
---|---|
列 | の |
一種 | です |
= {name: "xiaoming"、age:12} var json.stringify(person)
stringify()
のプロパティまたは関数
の
配列コレクションです。
人
、
['name']);
switch(key){ ケース「名前」: return値+"、wang"; ケース「年齢」: 未定義を返します。 デフォルト: 戻り値; }}); // {"name": "xiaoming、wang"}
関数
が未定義の場合、この属性は無視されることに注意してください
。 「名前」:「Xiaoming」、 "age":12}
tojson()メソッドをオブジェクトに追加:
var person = { 名前:「Xiaoming」、 年齢:12、 トジソン:function(){ this.name+"is"+this.ageを返します。 }} json = json.stringify(person); console.log(json
;
この関数は、
キーと値の2つの値を受け入れます。
: "Xiaoming"、 "age":12} '、function(key、value){ if(key == "age"){ return値+10; } それ以外{ 戻り値; }}
)
2.リクエストメソッドとリクエストアドレスを設定します
3.次に、送信を使用してリクエストを送信します
4.ステータスの変更を監視します
5.最後に、返されたデータを受信します。const
xhr
= new xmlhttprequest()xhr.open( 'get'、 './data/test.json'、true)xhr.oneadstatechange(){){ if(xhr。ReadyState=== 4){ if(xhr.status === 200){ console.log(json.parse(xhr.responsetext)) } それ以外 { console.log( 'その他の状況...') } }} xhr.send()
$ .ajax({{{ タイプ: "post"、// method url: "a.php"、//サーバーデータ型のリンクアドレス: "json"、//データデータの送信と受信データの形式:{{{ ユーザー名:「ジェームズ」、 パスワード:「123456」 }、 成功:function(data){// function console.log(データ)データを正常に受信するときに呼び出されます; //データはサーバーによって返されるデータです}、 エラー:function(request){//データを要求するときに呼び出される関数はアラートに失敗します( "エラーが発生しました:"+request.status); }}
)
;
。
//ステップ1:非同期オブジェクトvar ajax = new xmlhttprequest(//ステップ2:最初のパラメーターはリクエストのタイプです。 "get"、 "users.json"); //ステップ3:リクエストを送信しますajax.send(); if(ajax.readystate == 4 && ajax.status == 200){ //ステップ5:この判断を入力できる場合、要求されたページが存在することを意味します
(
)メソッドと同じ構造があります
リクエストパラメーターは、URLの背面にスプライスされ、セキュリティが低い場合、リクエストパラメーターがリクエストボディにラップされます。
2。量の差:GETメソッドによって送信されるデータの量は小さく、2kBを超えることはできませんが、POSTメソッドで要求されるデータの量は大きく、制限はありません。
3。トランスミッション速度:getの伝送速度はポストの速度よりも高く
jquery関数が変更されている限り、使用方法は同じであるため、プログラムはGet Requestsとpost Requests
機能getCookie(c_name)を切り替えることができます。 。文字列オブジェクトが存在しない場合、それは-1です(c_start!= -1){c_start = c_start +c_name.length +1 // Cookie値の開始c_end = document.cookie.indexof( ";"、c_start)// index position...This sentence is to get the value end position.それが最後の項目であるかどうかを考慮する必要があるため、「;」の場合、c_end == -1)c_end = document.cookie.lengthの場合、登場するかどうかを判断できます unescape(document.cookie.substring(c_start、c_end))//値は、substring()を介して取得されます。 unescape()を理解したい場合は、まず、非常に重要な基盤である場合は、検索できます。記事}} return ""}
$ .Cookie( "GroupCode"、222)
document.cookie = "name = value; expires = date"
document.cookie= "username = lisi"; var cookies = document.cookie;
(cookies);
"; document.cookie =" username =; expires = thu、1970年1月00:00:00 gmt "; var cookies = document.cookie; console.log(cookies)
;
最も一般的に使用されるループは、主にループアレイを使用して
arr = [1,2,3]を使用します。 console.log(i、arr [i])} // 0 1 // 1 2 // 2 3
syntax: arr.forEach(callback(currentValue [, index [, array]])[, thisArg]);
アレイ内の各要素に対して実行される関数です。 )、配列(foreach()メソッドが動作している配列)
thisargは、コールバック関数コールバックが実行されるときに使用される値です。
let arr = [1、2 、、 3] let arrcopy1 = [] arr.map((item、index、arr)=> { arrcopy1.push(item * 2)})console.log(arrcopy1)// [2、4、6]
foreach()は、削除されたアイテムごとに一度コールバック関数を実行します(たとえば、スパースアレイの要素がスキップされます。 )
map()およびresid()とは異なり、返品値はなく、常に無回を返します。
foreach()には、例外をスローする以外に、foreach()ループを中止または脱出する方法がありません。
が
真であるという前提で指定された
コードを実行することができます
3){ n ++;} console.log(n); //予想される出力:3note:条件評価の結果がtrueになる前
、ブレークステートメントを使用してループを停止し
ます条件値が偽になるまで指定されたステートメント。
ステートメントを
実行した後に条件を検出するため、指定されたステートメントは少なくとも1回実行されます
。
console.log(list [i])// value console.log(i)//インデックス i = i + 1} while(i <list.length)
for…inループを使用して、オブジェクトの列挙可能属性リスト([[プロトタイプ]]チェーンを含む)を横断することができます
。
主にオブジェクトを横断するため
に使用されます。
console.log(Property)//プロパティ名 console.log(object[property]) //property value}
相关推荐:javascript学习教程
以上就是爆肝归纳JavaScript学习知识点的详细内容,更多请关注php中文网其它相关文章!