検索
ホームページウェブフロントエンドjsチュートリアルjs オブジェクトと arrays_javascript スキルに関する隠れたトーク

コードをコピー コードは次のとおりです:

/*
配列とオブジェクト [JavaScript の決定版ガイド、第 5 版]
*/

/*
オブジェクト: 順序付けされていない属性のセットです。属性 それぞれに独自の名前と値があります*/

/* オブジェクトを作成する簡単な方法、オブジェクトの直接数量*/
var obj = {}
var obj = {name: 'maxthon; '};
var obj = {name: {}, text: []};

/* 新しい演算子を使用できます*/
var a = new Array(); var d = new Date();
var r = new RegExp('javascript', 'i');
var o = new Object(); // var o = {};注: new 演算子の後にはコンストラクターが続くため、
typeof Array; // 'function'
Function のインスタンスです。
*/
/* オブジェクト属性*/
// 注: [] は、属性の値にアクセスするために使用します。
var t = {};
t.text = 'hello';
t.o = は同時に使用され、属性は Name 内で使用されます。 {};
t.o.name = 'rd';
t.n = [];
"テキスト": "こんにちは"
}; .log(t.text); // 'hello' ;
// 補足: 通常、キーワード var は変数の宣言に使用されますが、オブジェクトのプロパティを宣言する場合、var を使用して

/* オブジェクト列挙*/

var F = function () {};
F.prototype.name = 'RD';
var obj = new F; var key in obj) {
console.log(key) // name
}

// プロトタイプチェーンに沿って検索しないでください。 (obj の var key) {
if (obj.hasOwnProperty(key )) {
console.log(key) //
}
}
/* 注: for in はできません。事前定義されたプロパティを列挙します。 */


/* 属性の存在を確認します*/

window.a = 'rd';
console.log(a in window); // true;

var F = function () {};
F.prototype.name = 'RD';
var obj = new F; ' in obj); // true;


var toString = Object.prototype.toString;

// オブジェクト obj に getName メソッドが含まれている場合は、それを実行します。 if (obj.getName && toString.call(obj.getName ) === '[オブジェクト関数]') ) {
obj.getName();
}

// 補足:
console.log(null == 未定義); // true;
console.log(null !== 未定義) //


/* 属性を削除します。 🎜>delete obj.name;
// 補足: delete 演算子を使用すると、var で宣言された変数は削除できません。


/* 連想配列としてのオブジェクト*/

// オブジェクトの属性を取得します:
obj.name ;
obj['name']; // ここで name は文字列です。 [] を使用して表現すると、属性名は次のようになります。
// 操作中に操作を追加します。
// 注: このプロパティは、
// 連想配列
/* マッピング: JavaScript オブジェクト ハンドル文字列 (属性名) が値にマッピングされます。 */
for (var key in obj) {
console.log(key);
}



/*
共通のオブジェクトのプロパティとメソッド

JavaScript のすべてのオブジェクトは Object クラスから継承されます。 🎜>
1、コンストラクター属性。
*/
var F = function () {};
var f = new F; (f.constructor == F); // true

// コンストラクターのプロトタイプには、それ自体を指す属性コンストラクターがあります。 >// 補足:
var F = function () {};
G.prototype = new F;

var g = new G ;
console.log(g.constructor == F); // true;
console.log(g.constructor == G); // g インスタンスを使用できます。 ;


/*
2, toString() メソッド
*/
{'name': 'maxthon'}.toString(); // '[オブジェクト オブジェクト] '

/* 配列は toString メソッドを使用し、要素を文字列に結合すると、他のオブジェクトは [object Object] に変換されます。
関数は元の toString メソッドを使用し、関数のソース コードは次のようになります。取得*/
['a', 'b', 1, false, [' e','f'], {}].toString()// "a,b,1, false,e,f,[object オブジェクト]"

function t() {
console.log('test');
}
t.toString();
// ソース コード

/*
3, toLocalString();
オブジェクトのローカライズされた文字列を返します
4、valueOf()は、 valueOf/toString;
6, propertyIsEnumberable();
7,
a.isPrototyeOf( b);
a が b のプロトタイプの場合、true を返します。
* /
var o = {}; true;
Object.isPrototyeOf(o); // false;
関数.isPrototyeOf(Object); >
/* [関数インスタンスが存在する場合、クロージャが存在します。ガベージがリサイクルされない場合、代入参照が存在します。] */



/*
配列: 順序付けされたコレクション。値;

各値は、要素とも呼ばれ、添字に対応します。
添字は 0 から始まります。
配列内の値は、任意の型にすることができます。
*/

// 作成します。
var arr = [];

var t = ''; 🎜>var arr = [1,2,3、null、未定義、[]、{}, t];

/* new 演算子を使用して配列を作成する 3 つのケース: */
var arr = new Array() // []、直接量
var arr = new Array(5); // 長さは 5 です。
console.log(arr); // [] は未定義です。 >
var arr = new Array('5'); // 値は ['5'];
var arr = new Array('test'); ;

/* 関連例*/
var s = [1, 2, 3] = 'a'; 🎜>[ 1, 2, 3, 未定義, 未定義, 'a']



/* 配列の読み取りと書き込み*/

value = array[0] ;
a[1] = 3.14;
a[i] = 3; // 配列 -> 属性
array.test = 'rd';

// 配列の添字は 2 未満の整数です。
/ / 他の値の場合、JavaScript は文字列に変換され、添え字ではなくオブジェクト属性の名前として使用されます。 [];
array[9] = 10; // 配列の長さは 10 になります。
// 注: JavaScript インタープリターは、配列インデックス 9 の要素にのみメモリを割り当て、他のインデックスは割り当てません。

var array = [];
array.length = 10;
array[array.length] = 4; /* 配列要素を削除します*/
// 削除演算子 配列要素は未定義の値に設定されていますが、要素自体はまだ存在しています。
// 実際に削除するには、次のコマンドを使用します。 Array.shift(); [最初のものを削除] Array.pop(); [最後のものを削除] Array .splice(); [配列から連続した範囲を削除] または Array.length の長さを変更します。例*/
var a = [1, 2, 3];
delete a[1]
console.log(a); // [1, 未定義, 3]; 🎜>/* 補足: JavaScript 決定版ガイド、第 5 版、59 ページ
by var 宣言された変数は永続的です。つまり、これらの変数を削除するために delete 演算子を使用すると、エラーが発生します。 : 開発者ツールでは、Web ページでは、
*/


/* 配列の長さ*/
[] で説明されているように削除できます。 length;


/* 配列を走査*/
var array = [1, 2, 3, 4, 5];
for (var i = 0, l = array.長さ; i
console.log(array[i]);

array.forEach(関数 (項目, インデックス, arr) .log(item);
});

/* 配列: 前述のように正しい長さ*/

/* 多次元配列*/
[[ 1], [2]]

/* 配列メソッド*/
// join
var array = [1, 2, 3, 4, 5];
var str = array .join(); // 1,2,3,4,5
var str = array.join('-'); // 1-2-3-4-5
// 注:メソッドは String.split() メソッドの反対です。

// reverse() ;
var array = [1, 2, 3, 4, 5]; ; // [5, 4, 3, 2, 1]
// 注: 元の配列

// sort(); var array = [1, 3, 2, 4, 5, 3];
array.sort();// [1, 2, 3, 3, 4, 5]; 注: 配列内に未定義の要素があります。これらの要素を入れてください。最後に*/

/* 並べ替えをカスタマイズすることもできます。sort(func);
func は 2 つのパラメーターを受け取ります。最初のパラメーターが 2 番目のパラメーターの前にある必要がある場合、比較関数が返されます。 0 より小さい数値。逆に、0 より大きい数値を返します。等しい場合は、0 を返します。
* /
array.sort(function (a, b) {
return b - a;
});

// 例: 奇数から偶数へ、小さいものから大きいものへ並べ替えます
[1, 2, 3, 4, 5, 6, 7, 2, 4 , 5, 1].sort(function (a, b) {
if (a % 2 && b % 2) {
return a - b;
}

if (a % 2) {
return -1;
}

if (b % 2) {
return
}

return a - b; 🎜>
});


// concat() メソッド。深さは結合しません。Merge
var a = [1, 2, 3]; concat(4, 5); // [1, 2, 3, 4, 5]
a.concat([4, 5]) // [1, 2, 3, 4, 5]
; a.concat([4, 5], [8, 9]); // [1, 2, 3, 4, 5, 8, 9]
a.concat([4, 5], [6, [10, 19]]); // [1, 2, 3, 4, 5, 6, [10, 19] ]


// ソース配列はスライス() メソッドを使用しません。
var a = [1, 2, 3, 4, 5];
a.slice(0, 3) // [1, 2, 3]
a.slice(3); ; // [4, 5];
a.slice(1, -1); // [2, 3, 4]
a.slice(1, -1 5)
a.slice (1, 4);
a.slice(-3, -2); // [3]
a.slice(-3 5, -2 5); 3);
/* 注:
には、2 番目のパラメーターで指定された要素は含まれません。
負の値は、負の値の配列の長さ
*/

に変換されます。 // splice(pos[, len[, a, b]]) メソッド。指定した位置を削除した後、長さの要素を追加します。
// 削除された要素で構成される配列を返します。配列が変更されます。
var a = [1, 2, 3, 4, 5, 6, 7, 8]; // [ 5, 6, 7, 8];このとき a: [1, 2, 3, 4]
a.splice(1, 2); // このとき a: [1, 4 ]; splice(1, 1); // この時点では、

var a = [1, 2, 3, 4, 5]; 2, 0, 'a', 'b'); // [1, 2, 'a', 'b', 3, 4, 5]
a.splice(2, 2 , [1, 2] , 3); // ['a', 'b'] このとき a: [1, 2, [1, 2], 3, 3, 4, 5]
/* 注:
2 番目のパラメーター以降のパラメーターは、処理配列に直接挿入されます。
最初のパラメータは負の数にすることができます。
*/


// Push() メソッドと Pop() メソッドは 1 つまたは 2 つを変換できます。 more は配列の末尾に新しい要素を追加し、配列の新しい長さを返します。
// Pop() は配列の最後の要素を削除し、配列の長さを減らし、その値を返します。
// 注: 2 つの各メソッドは、配列の変更されたコピーを生成するのではなく、元の配列を変更します。 // スタック: [1, 2 ];
stack.pop(); // 削除された要素の値
stack.push(3); [1, 3]; return 2;
stack.pop(); // スタック: [1]; 削除された要素の値
stack.push([4, 5]); [1, [4, 5]]returnm 2;
stack.pop(); // スタック: [4, 5]; // unshift()


// toString() メソッドと toLocalString()
[1, 2, 4].toString (); // 1,2,3 ;
['a', 'b', 'c'].toString(); // 'a,b,c';パラメータなしの join メソッド。


/* 新しい jsapi メソッド:map、every、some、filter、forEach、indexOf、lastIndexOf、isArray */


/* Array- like object*/

arguments
document.getElementsByTagName();
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
JavaScriptコメント://および / * *を使用するためのガイドJavaScriptコメント://および / * *を使用するためのガイドMay 13, 2025 pm 03:49 PM

javascriptusestwotypesofcomments:シングルライン(//)およびマルチライン(//)

Python vs. JavaScript:開発者の比較分析Python vs. JavaScript:開発者の比較分析May 09, 2025 am 12:22 AM

PythonとJavaScriptの主な違いは、タイプシステムとアプリケーションシナリオです。 1。Pythonは、科学的コンピューティングとデータ分析に適した動的タイプを使用します。 2。JavaScriptは弱いタイプを採用し、フロントエンドとフルスタックの開発で広く使用されています。この2つは、非同期プログラミングとパフォーマンスの最適化に独自の利点があり、選択する際にプロジェクトの要件に従って決定する必要があります。

Python vs. JavaScript:ジョブに適したツールを選択するPython vs. JavaScript:ジョブに適したツールを選択するMay 08, 2025 am 12:10 AM

PythonまたはJavaScriptを選択するかどうかは、プロジェクトの種類によって異なります。1)データサイエンスおよび自動化タスクのPythonを選択します。 2)フロントエンドとフルスタック開発のためにJavaScriptを選択します。 Pythonは、データ処理と自動化における強力なライブラリに好まれていますが、JavaScriptはWebインタラクションとフルスタック開発の利点に不可欠です。

PythonとJavaScript:それぞれの強みを理解するPythonとJavaScript:それぞれの強みを理解するMay 06, 2025 am 12:15 AM

PythonとJavaScriptにはそれぞれ独自の利点があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1. Pythonは、データサイエンスやバックエンド開発に適した簡潔な構文を備えた学習が簡単ですが、実行速度が遅くなっています。 2。JavaScriptはフロントエンド開発のいたるところにあり、強力な非同期プログラミング機能を備えています。 node.jsはフルスタックの開発に適していますが、構文は複雑でエラーが発生しやすい場合があります。

JavaScriptのコア:CまたはCの上に構築されていますか?JavaScriptのコア:CまたはCの上に構築されていますか?May 05, 2025 am 12:07 AM

javascriptisnotbuiltoncorc;それは、解釈されていることを解釈しました。

JavaScriptアプリケーション:フロントエンドからバックエンドまでJavaScriptアプリケーション:フロントエンドからバックエンドまでMay 04, 2025 am 12:12 AM

JavaScriptは、フロントエンドおよびバックエンド開発に使用できます。フロントエンドは、DOM操作を介してユーザーエクスペリエンスを強化し、バックエンドはnode.jsを介してサーバータスクを処理することを処理します。 1.フロントエンドの例:Webページテキストのコンテンツを変更します。 2。バックエンドの例:node.jsサーバーを作成します。

Python vs. Javascript:どの言語を学ぶべきですか?Python vs. Javascript:どの言語を学ぶべきですか?May 03, 2025 am 12:10 AM

PythonまたはJavaScriptの選択は、キャリア開発、学習曲線、エコシステムに基づいている必要があります。1)キャリア開発:Pythonはデータサイエンスとバックエンド開発に適していますが、JavaScriptはフロントエンドおよびフルスタック開発に適しています。 2)学習曲線:Python構文は簡潔で初心者に適しています。 JavaScriptの構文は柔軟です。 3)エコシステム:Pythonには豊富な科学コンピューティングライブラリがあり、JavaScriptには強力なフロントエンドフレームワークがあります。

JavaScriptフレームワーク:最新のWeb開発のパワーJavaScriptフレームワーク:最新のWeb開発のパワーMay 02, 2025 am 12:04 AM

JavaScriptフレームワークのパワーは、開発を簡素化し、ユーザーエクスペリエンスとアプリケーションのパフォーマンスを向上させることにあります。フレームワークを選択するときは、次のことを検討してください。1。プロジェクトのサイズと複雑さ、2。チームエクスペリエンス、3。エコシステムとコミュニティサポート。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

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

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター