JavaScript の奇妙な動作 配列_JavaScript のヒント
プログラミング言語における配列の重要性は自明のことですが、JavaScript の配列は最も一般的に使用されるオブジェクトの 1 つであり、弱い型であるため、非常に柔軟で強力です。同じ型またはそのサブタイプの要素のみを格納できる Java などの厳密に型指定された高級言語の配列とは異なり、JavaScript は複数の型の要素を同じ配列に格納でき、長さを動的に調整することもできます。データが増加するにつれて、または配列の長さの自動変更を減らします。
今日は JavaScript の配列を確認し、彼の奇妙な動作をいくつかまとめました。間違いがある場合は、ご指摘ください。
奇妙な 1: Array() コンストラクター関数は、新しいキーワードを使用せずに呼び出すことができます:
Array() コンストラクターは、配列の要素として渡されたパラメーターを使用して配列を作成します。通常、次のように呼び出します。
var a = new Array(1, 2, "bom!"); a.length; //3 console.log(a); //[1, 2, "bom!"]
var a = Array(1, 2, "bom!"); a.length; //3 console.log(a); //[1, 2, "bom!"]
function Array(args) { //如果,this不是Array的实例的话, //说明不是通过new调用的,则在这里再重新调用 if( !this instanceof Array) { return new Array(args); }//后面是正常调用时的实现代码<br />//...<br />}
奇妙な 2: コンストラクターにパラメーターが 1 つだけ渡された場合、動作は予測できません
var a = new Array(12); console.log(a.length); //12 console.log(a); //[]
var a = new Array(1.1); //Uncaught RangeError: Invalid array length(…)
var a = new Array("1.1"); console.log(a.length); // console.log(a); //["1.1"]
var a = []; //空数组 var a = [1, 1, "bom"]; //三个元素 var a = [12]; //一个元素,并且元素是12
奇妙な 3: 配列の長さ属性は変更可能 (書き込み可能)
以下のように長さを2から100に直接変更して修正成功しました! ! !
var a = [1, 2, 3, 4]; console.log(a.length); //4 a.length = 100; console.log(a.length); //100
var a = [1, 2, 3, 4]; a.length = 100; console.log(a[10]); //undefined console.log(99 in a); //false
var a = [1, 2, 3, 4]; a[99] = undefined; console.log(a.length); //100
var a = [1, 2, 3, 4]; a[99] = undefined; console.log(99 in a); //true; console.log(98 in a); //false console.log(a.length); //100

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









方法: 1. 最初の要素を削除するには、shift() を使用します。構文は「array.shift()」です; 2. 最後の要素を削除するには、pop() を使用します。構文は「array.pop()」です; 3. splice() を使用して任意の位置の要素を削除します。構文は「array.splice(位置, 数値)」です。 4. length を使用して最後の N 要素を削除します。構文は「array.length=元の配列の長さ-N」です。 ; 5. 空の配列「[ ]」を直接代入して要素をクリアします; 6. delete を使用して、指定した添え字の要素を削除します。

3 つの変換方法: 1. 指定された文字列を文字列配列に分割するには、split() を使用します。構文は「str.split (区切り文字、配列の最大長)」です; 2. 拡張演算子「...」を使用します (反復可能)文字列オブジェクトの場合、文字配列に変換します (構文 "[...str]"; 3. Array.from() を使用して文字列を配列に変換します (構文 "Array.from(str) "。

js配列をphp配列に変換することができます 操作方法は、 1.phpサンプルファイルを作成する; 2.「JSON.stringify()」という構文を使用して、js配列をJSON形式の文字列に変換する; 3.構文「json_decode()」を使用します。「JSON 形式の文字列を PHP 配列に変換します。パラメータ true がここに追加されます。これは、JSON 形式の文字列が PHP 連想配列に変換されることを意味します。

JS で配列の長さを取得するのは非常に簡単です。各配列には length プロパティがあり、配列の最大長、つまり、その値は添字の最大値に 1 を加えたものを返します。数値の添え字は 2^32-1 未満である必要があるため、長さ属性の最大値は 2^32-1 に等しくなります。次のコードでは、空の配列を定義し、インデックスが 100 である要素に値を割り当てます。その後、length プロパティは 101 を返します。したがって、長さ属性は実際の配列要素の数を反映できません。

js 配列から要素を削除するには 4 つの方法があります: 1. splice を使用する; 2. filter を使用する; 3. pop メソッドとシフトを使用する; 4. delete キーワードを使用する。

JavaScript の Array.prototype.sort() メソッドは、配列の要素をソートするために使用されます。このメソッドはその場でソートします。つまり、ソートされた新しい配列を返すのではなく、元の配列を変更します。デフォルトでは、sort() メソッドは Unicode コード ポイント値に従って文字列を並べ替えます。これは、オブジェクトやその他の複雑なデータ型の並べ替えではなく、主に文字列と数値の並べ替えに使用されることを意味します。

js 配列の重複を排除する方法には、Set の使用、indexOf の使用、includes の使用、filter の使用、reduce の使用などがあります。 1. セット内の要素が繰り返されないという特徴を持つ Set を使用します; 2. 配列内の指定された要素の最初のインデックス位置を返すには、indexOf を使用します; 3. 要素がすでに存在するかどうかを判断するには、includes を使用します4. filter を使用して要素をフィルタリングする; 5. reduce を使用して配列内の要素を圧縮するなど。

JavaScript では、 length 属性を使用して配列の長さを取得できます。構文は「array object.length」です。また、reduce() 関数または ReduceRight() 関数を使用して要素の合計を求めることができます。構文は「」です。 arr.reduce(function f(pre,curr){return pre+cur})」または「arr.reduceRight(function f(pre,curr){return pre+cur})」。
