JavaScript学習入門_基礎知識

PHP中文网
PHP中文网オリジナル
2016-05-16 19:00:421043ブラウズ

私たちが初めて言語を学び始めるとき、著者はいつも「Hello World」の例を使って私たちの IQ を侮辱するのが好きですが、誰もが愚かではないと思うので、いくつかの言葉を書きました

<html>
< >
<meta http-equiv ="Content-Type"コンテンツ="text/html;charset=gb2312">
<タイトル >Document.writeln() メソッドtitle>
<スクリプト言語="javascript" >
function createsummary()
{
win2
=open( "","ウィンドウ 2")
//win2.document.open("text/plain")
win2.document.writeln(" title" document.title)
win2.document.close()
}
スクリプト>
ヘッド>
<ボディ>
<名前="#top">< /a>
<form>
<入力タイプ="ボタン " 名前="ヘルプ"= "ヘルプ"onClick="createsummary( )">
フォーム>
<ボディ>
html>

何か言って知識ポイント:

1: JavaScript は大文字と小文字を区別する言語です。

2: 各行に「;」を使用することをお勧めします。

3: 名前の最初の文字は文字、アンダースコア、または「$」である必要があります。 >4: 変数は JavaScript で var を使用して宣言され、永続的です。

5: ブロックレベルのスコープはありません。例:

Var スコープ

="globle";
function
f(){alert(scope)
//
「globle」の代わりに「underfined」を表示します。
変数スコープ
="ローカル" ;alert(scope);}
F();

は次のコード例と同じ意味です

Var スコープ

="globle";function f(){ Var スコープ
アラート (スコープ);

//
「グロブル」の代わりに「アンダーファイン」を表示します
変数スコープ
="ローカル"; アラート(スコープ);}
F() ;

提案: 関数の先頭ですべての変数宣言を収集することは、プログラミングの良い習慣です。

6: ECMAScript 標準では、

function

doadd(i){alert(i); }


function
doadd(i){alert(i);}doadd(

10
);後の関数は実際に実行され、2 番目の関数は最初の関数をカバーします。

7: 引数オブジェクトの使用。

function

doAdd() If(arguments.length==
1){ alert(arguments[0
] 10);} If(arguments.length

==
2){alert(arguments[0
] arguments[0);}doAdd(

10
);doAdd(10
,20);実行効果: わずか...

8: JavaScript 配列の使用方法



1.join()

array.join はすべての要素を配置します配列内で文字列に変換して結合します。デフォルトは "," です。

var a = [1,2,3];

var s = a.join(); ==> s="1,2 ,3"

s
= a.join(",");==> s="1、2、3!」結果は若干異なります

array.join() は String.split() の逆です (String をいくつかの部分に分割して配列を構築します)

2.reverse ()

array.reverse() は、配列要素の順序を反転し、反転した配列を返し、元の配列

var に対して演算を実行します。 a = new Array(1,2,3) 🎜>] =1, a[1] = 2, a[ 3] = 3a.reverse(); ==> a[1

]
= 3、a[2] = 2 、a[3] = 1var s =

a. join();
s = "3,2 ,1"3.sort()array.sort() 配列上の要素をソートし、ソートされた配列を返します。それ以外の場合、デフォルトはアルファベット順です。比較関数は sort() パラメータとして渡す必要があります

var a = new Array("A""C""B");

a.sort();

var s = a.join("/" );  ==>s = "A/ B/ C";

var a = [1, 3, 4];

a.sort(

関数(a,b)

{

return a - b;

}

) ;    
==><0,0,>0 返し 1,3, 4

toLowerCase(), toUpperCase()转换字母大小写

4.concat()

作成し、concat() の原配列に含まれる要素を含む配列を返します。その後は concat() パラメータになります。

var a = [1,2,3];

a.concat(
4,5);   ==>[1,2,3,4,5]

a.concat([
45]、[67]); ==>[1,2,3456 ,7]

a.concat(
4,[5 , [6,7]]);  ==>[1,2,345、[6,7] ]

5.slice()

array.slice( ) 指定された配列の 1 つのスライスを返し、2 つのパラメータを指定して返す必要があります片断の起止、戻り配列を含む一参加ですが二参を返します

若只有一参無し二参、戻り由一参起その後のすべてのもの要素、若有るものは、相補配列の最後の要素の

-1 指定された配列の最後の要素、-3 指定された配列の最後の要素、倒数第 3 要素

var a = [1,2345];

a.slice(
0,3) >[1 ,2,3] a.slice(
3
); 🎜>,5]a.slice(1-1
); 3
4]a.slice(-3, -2); >==>[3]

6.splice()array.splice() は、要素の挿入または削除、または両方の挿入、削除メソッドに共通であり、元の配列に変更され、挿入または削除された後の要素は必要に応じて移動されます。 >最初の 2 つのパラメータは削除を参照し、最初のパラメータは削除する配列内の要素の位置を指定し、2 番目のパラメータは削除を指定します。これらの 2 つのパラメータの後に、挿入する要素を指定します。パラメーター 1 で指定された場所から

var a = [1,2345678]

var a.splice(4);    ==>return[5,678] a=[1234 ]

a.splice(
1,2);      ==>return[2,3] a=[1,4]

a.splice(
1,1);     ==>return[4] a=[1]

var a = [1234 ,5]

a.splice(
2,0'a'' b');     ==> 返し[] a =[1,2'a'' b'345]

a.splice(
2,2,[1, 2},3); ==>Return ['a''b' ] a =[1,2, 3、[12]、3345]

7.push() Pop()

stack() のような配列を使用し、元の配列を変更し、FILO(first in last out) Push() を複数実行します。要素が配列の末尾に追加され、新しい配列の長さ Pop() が返されます。代わりに、配列の最後の要素を削除し、array() の長さを減算して、削除された値

を返します。

var stack = [];

stack.pust(
1 8);    ==>[1,8] return 2

stack.pop();         
==>[1] 戻る 8

stack.push(
3);    ==>[1,3] return 2

stack.pop();     
==>[1] 戻る 3

stack.push();    
==>[1,[4,5] ] return 2

stack.pop();     
==>[1] 戻る [4,5]

stack.pop();    
==>[] 戻る [1]

8.unshift()shift()

与push()pop()に似ているが、配列の头部にあるだけ挿入、削除を実行し、在尾部ではない() return 新しい配列の長さ、N 個の要素を挿入するときは次の性質が挿入される shift() return 新しい配列の最初の要素

var a = [];

a.unshift(
1 );    ==>a:[1] return 1

a.unshift(
22);   ==>a:[22,1] return 2

a.shift();      
==>a:[1] return22

a.unshift(
3、[45]);   ==>a:[3,[4,5]]、1] return 3

a.shift()
==>a:[[4,5]、1] return 3

a.shift()
==> a:[1] return[4,5]

a.shift( )
==>a:[] return 1

9.toString() toSurce()

[
1, 2,3].toString();    ==>"1,2,3"

[
'a',"b" , "c"].toString();  ==>"a,b,c"

[
1,[2.'c ']].toString(); ==>"1,2,c"

toLocaleString() は toString のローカライズされたバージョンで、各要素の toLocaleString() メソッドを呼び出して配列要素を String に変換します。生成された String は、ローカル固有 (および実装定義) の区切り文字

9:

Global オブジェクトが ECMAScript で最も特殊なオブジェクトです。それはまったく存在しません。次のコードを記述しようとすると、エラーが表示されます:

エラー メッセージは、Global がオブジェクトではないことを示していますが、オブジェクトではありません。 Global はオブジェクトであると言っただけです。ここで理解すべき主な概念は、ECMAScript には独立した関数は存在せず、すべての関数は何らかのオブジェクトのメソッドである必要があるということです。 isNaN()isFinite()parseInt()parseFloat() など、本書の前半で紹介した関数の場合、などを参照してください。それらはすべて独立した関数のように見えます。実際、これらはすべて Global オブジェクトのメソッドです。 Global オブジェクトにはこれら以外のメソッドもあります。

encodeURI() メソッドと encodeURIComponent() メソッドは、ブラウザーに渡される URI (Uniform Resource Identifier) をエンコードするために使用されます。有効な URI には、スペースなどの特定の文字を含めることはできません。これら 2 つのメソッドは URI をエンコードするために使用され、すべての無効な文字が特殊な UTF-8 エンコードに置き換えられ、ブラウザーがそれらの文字を受け入れて理解できるようになります。

encodeURI() メソッドは完全な URI (例: http://www.php.cn/value.htm) を処理するために使用されます。 encodeURIComponent() は、URI のフラグメント (前の URI の illegal value.htm など) を処理するために使用されます。これら 2 つのメソッドの主な違いは、encodeURI() メソッドはコロン、スラッシュ、疑問符、ポンド記号などの URI 内の特殊文字をエンコードしないのに対し、encodeURIComponent() は、見つかった非標準文字をエンコードします。例:

このコードは 2 つの値を出力します:

OK Asご覧のとおり、最初の URI には、スペースが に置き換えられることを除いて変更はありません。 2 番目の URI 内の英数字以外の文字はすべて、対応するエンコーディングに置き換えられ、基本的にこの URI は役に立たなくなります。これが、encodeURI() が完全な URI を処理できるのに対し、encodeURIComponent() が既存の URI の末尾に追加された文字列のみを処理できる理由です。

当然ながら、エンコードされた URI をデコードするには、decodeURI()decodeURIComponent() という 2 つのメソッドがあります。ご想像のとおり、これら 2 つの方法は、対応する方法とはまったく逆のことを行います。 decodeURI() メソッドは、encodeURI() メソッドで置き換えられた文字のみをデコードします。たとえば、%20 はスペースに置き換えられますが、%23 はポンド記号 ( #)、encodeURI() はこのシンボルを置き換えません。同様に、decodeURIComponent() はすべての encodeURIComponent() エンコードされた 文字をデコードします。つまり、すべての特殊値をデコードします。例:

このコードは 2 つの値を出力します:

この例では、変数 uri は、encodeURIComponent() でエンコードされた文字列を格納します。結果の値は、両方のデコード方法が適用された場合に何が起こるかを示しています。最初の値は、decodeURI() によって出力され、 はスペースに置き換えられます。 2 番目の値は decodeURIComponent() によって出力され、すべての特殊な値が置き換えられます。

最後のメソッドは、おそらく ECMAScript 言語全体で最も強力なメソッド、eval() メソッドです。このメソッドは ECMAScript インタープリタ全体と似ており、実行される ECMAScript (または JavaScript) 文字列である 1 つのパラメータを受け入れます。例:

このコード行の機能は、次のコードと同等です:

インタープリターは eval() 呼び出しを見つけると、引数を実際の ECMAScript ステートメントとして解釈し、関数が存在する場所に挿入します。これは、eval() 呼び出し内で参照される変数はパラメータの外で定義できることを意味します:

ここでは、変数 msg eval() は呼び出し環境の外で定義されており、コードの 2 行目が実際のコード行に置き換えられるため、警告には依然としてテキスト "hello world" が表示されます。 。同様に、eval() 呼び出し内で関数または変数を定義し、関数の外のコードでそれらを参照できます。

ここでは、 function sayHi()は、eval()呼び出し内で定義されています。呼び出しは実際の関数に置き換えられるため、次の行でも sayHi() を呼び出すことができます。

グローバルオブジェクトにはメソッドだけでなくプロパティもあります。 未定義NaNInfinity という特殊な値を覚えていますか? これらはすべて Global オブジェクトのプロパティです。さらに、すべてのローカル オブジェクトのコンストラクターは、Global オブジェクトのプロパティでもあります。

10;

open(URL,WindowName,parameterList): open メソッドは、新しいブラウザ ウィンドウを作成し、指定された URL アドレスを新しいウィンドウに読み込みます。
close(): close メソッドはブラウザ ウィンドウを閉じます。
alert(text): 情報ボックスをポップアップします。
prompt(text, Defaulttext) : プロンプト ボックスを表示します。
setTimeout(expression, time): タイミング設定。一定時間後に、expression で記述されたコードを自動的に実行します。時間を設定するには time を使用します。単位はミリ秒です。 (タイマー): 以前のタイミング設定をキャンセルします。
back(): 履歴内の前の URL アドレスをロードするようにブラウザーに指示します。
forward(): 履歴内の次の URL アドレスをロードするようにブラウザーに指示します。
stop( ): Web ページの読み込みを停止するようにブラウザに指示します。
location: 現在のウィンドウの URL 情報を提供します。

(式、時間): タイミング設定、一定時間が経過すると式の記述が自動的に実行されます。コードでは time を使用して時間を設定します。単位はミリ秒です。>

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。