検索
ホームページウェブフロントエンドjsチュートリアルjs配列操作_javascriptスキルを詳しく解説

私は長い間 js を使ってきましたが、js の配列形式について詳しく調べたことがありませんでした。場合によっては、単純な string.split(char) を使用するだけです。この時期に取り組んだプロジェクトでは、多くの場所で配列を使用していました。私は JS をマスターしたと思っていましたが、始めることができませんでした。これから学びます。ふふ。学習した後、js 配列は非常に強力で、VB や C# よりもはるかに強力であることがわかりました。見てみましょう

1. 配列

の作成

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

var arrayObj = new Array() / /Create one Array
var arrayObj = new Array([size]); //配列を作成し、長さを指定します。上限ではなく、長さ
var arrayObj = new Array([ element0[, element1[, ...[ , elementN]]]]) //配列を作成し、値を割り当てます

2 番目のメソッドは配列を作成して長さを指定しますが、実際には配列はすべての場合において可変長であることに注意してください。つまり、長さが 5 に指定されている場合でも、要素は可変長になります。それ以外の場合は、長さがそれに応じて変更されることに注意してください。

2. 配列要素へのアクセス

コードをコピーします コードは次のとおりです。

var testGetArrValue=arrayObj[1] / /配列要素の値を取得します
arrayObj[1]= "これが新しい値です" //配列要素に新しい値を割り当てます
;

3. 配列要素の追加

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

arrayObj([item1 [item2 [ . . . [itemN ]]]);// 配列の末尾に 1 つ以上の新しい要素を追加し、配列の新しい長さを返します
arrayObj.unshift([item1 [item2 [. . . [ itemN ]]]]); // まず、1 つ以上の新しい要素を配列に追加します。配列内の要素は自動的に元に戻され、配列の新しい長さが返されます。
arrayObj.splice(insertPos,0) ,[item1[, item2[, . [,itemN ]]]]);// 1 つ以上の新しい要素を配列の指定された位置に挿入し、挿入位置の要素が自動的に戻されます。戻ってきました。

4. 配列要素の削除

コードをコピーします コードは次のとおりです。

arrayObj.pop(); //削除最後の 1 つの要素を削除し、要素の値を返します
arrayObj.shift(); //最初の要素を削除して要素の値を返し、配列内の要素は自動的に前方に移動します
arrayObj.splice(deletePos,deleteCount) ; // 削除元 指定した位置の deletePos から始まる deleteCount 要素の数を指定し、削除された要素を配列形式で返します

5. 配列のインターセプトとマージ

/ /配列の一部を配列形式で返します。endを省略した場合は、start以降の要素がすべてコピーされます。

arrayObj.concat([item1[, item2] [, . [,itemN]] ]); // 複数の配列 (文字列、または配列と文字列の混合) を 1 つの配列に連結し、接続された新しい配列を返します。 🎜>

6. 配列のコピー
コードをコピーします


コードは次のとおりです。

arrayObj.slice(0); //配列を返します 配列をコピーします。arrayObj.concat() を指しているのではなく、新しい配列であることに注意してください。 //配列のコピー配列を返します。

7. 配列要素の並べ替え
コードをコピーします


コードは次のとおりです。
arrayObj.reverse() //Reverse要素 (最初の要素が最後に、最後の要素が先頭になります)、配列アドレスを返します

arrayObj.sort(); // 配列要素をソートし、配列アドレスを返します

8. 配列要素の文字列化
コードをコピー


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

arrayObj.join(separator); //配列の各要素の値をセパレータで区切って結合した文字列を返します。
toLocaleString、toString、valueOf: は結合の特別な使用法と見なすことができ、一般的には使用されません

2. 配列オブジェクトの 3 つの属性

1. 長さ属性

Length 属性は配列の長さ、つまり配列内の要素の数を表します。配列のインデックスは常に 0 から始まるため、配列の上限と下限はそれぞれ 0 と length-1 になります。他のほとんどの言語とは異なり、JavaScript 配列の長さプロパティは可変であるため、特別な注意が必要です。 length 属性がより大きく設定されても、実際には配列全体の状態は変化しません。length 属性が元の値よりも小さく設定されている場合、元の配列内の要素のインデックスがそれ以上になるだけです。長さはすべての値が失われます。以下は、長さ属性の変更を示す例です:

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

var arr=[12,23,5 ,3, 25,98,76,54,56,76];
//10 個の数値を含む配列を定義します
alert(arr.length) //配列の長さを表示します 10
arr .length =12; //配列の長さを増やします
alert(arr.length); //配列の長さが 12 になったことを表示します
alert(arr[8]); 9 番目の要素の値は 56
arr.length=5; //配列の長さを 5 に減らし、5 以上のインデックスを持つ要素は破棄されます
alert(arr[8]) / /9 番目の要素が「未定義」になったことを表示
arr.length=10; //配列の長さを 10 に戻す
alert(arr[8]) //長さは 10 に戻りますが、 9 番目の要素は回復できません。「未定義」と表示されます

上記のコードから、length 属性の性質がはっきりとわかります。ただし、長さオブジェクトは明示的に設定できるだけでなく、暗黙的に変更することもできます。同様に、JavaScript で未定義の変数を使用することもできます (長さ以上のインデックスを持つ要素を参照します)。この場合、length 属性の値は に設定されます。使用される要素のインデックスの値に 1 を加算します。たとえば、次のコード:

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

var arr=[12,23,5 ,3, 25,98,76,54,56,76];
alert(arr.length);
arr[15]=34;
alert(arr.length);

このコードでは、最初に 10 個の数値を含む配列も定義されています。アラート ステートメントから、その長さが 10 であることがわかります。次に、インデックス 15 の要素が使用され、値 15、つまり arr[15]=34 が割り当てられます。このとき、alert ステートメントは配列の長さを出力するために使用され、結果は 16 になります。いずれにしても、これは、厳密に型指定されたプログラミングに慣れている開発者にとっては驚くべき機能です。実際、 new Array() を使用して作成された配列の初期の長さは 0 です。配列の長さが変化するのは、未定義の要素の操作です。
上記の紹介からわかるように、length 属性は非常に魔法のようなもので、これを使用すると配列の容量を簡単に増減できます。したがって、length 属性を深く理解すると、開発プロセス中にそれを柔軟に使用するのに役立ちます。

2. プロトタイプ属性

オブジェクト型のプロトタイプへの参照を返します。プロトタイププロパティはオブジェクトに共通です。
objectName.prototype
objectName パラメーターは、オブジェクト オブジェクトの名前です。

説明: プロトタイプ属性を使用して、オブジェクトのクラスの基本関数のセットを提供します。 オブジェクトの新しいインスタンスは、オブジェクトのプロトタイプに割り当てられた操作を「継承」します。
配列オブジェクトの場合、次の例は、prototype 属性の使用法を示しています。
配列内の最大要素値を返すメソッドを配列オブジェクトに追加します。これを実現するには、関数を宣言し、それを Array.prototype に追加して使用します。

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

function array_max()
{
var i,
max = this[0];
for (i = 1; i {
if (max max = this[i];
}
return max;
}
Array.prototype.max = array_max;
var x = new Array(1, 2) 、3、4、5、6);
var y = x.max();

このコードが実行されると、y は配列 x の最大値、つまり 6 を保持します。

3. コンストラクター属性

はオブジェクトを作成する関数を表します。
object.constructor //object はオブジェクトまたは関数の名前です。

説明: コンストラクター プロパティは、プロトタイプを持つすべてのオブジェクトのメンバーです。これらには、Global オブジェクトと Math オブジェクトを除くすべての JScript ネイティブ オブジェクトが含まれます。コンストラクター プロパティは、特定のオブジェクト インスタンスを構築する関数への参照を保持します。

例:

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

x = new String("Hi") ;
if (x.constructor == String) // 処理(条件が true の場合)。

または

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

function MyFunc {
// 関数体。
}

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

y = new MyFunc;
if (y.constructor == MyFunc) // 処理(条件が true の場合)。

配列の場合:

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

y = new配列 ();
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
es6 数组怎么移除元素es6 数组怎么移除元素Jan 11, 2023 pm 03:51 PM

方法:1、用shift()删除第一个元素,语法“数组.shift()”;2、用pop()删除最后一个元素,语法“数组.pop()”;3、用splice()删除任意位置的元素,语法“数组.splice(位置,个数)”;4、用length删除尾部的N个元素,语法“数组.length=原数组长度-N”;5、直接赋予空数组“[]”来清空元素;6、用delete删除指定下标的一个元素。

js获取数组长度的方法js获取数组长度的方法Jun 20, 2023 pm 05:33 PM

在 JS 中获取数组长度非常简单,每个数组都有一个 length 属性,该属性返回数组的最大长度,即其值等于最大下标值加 1。由于数字下标必须小于 2^32-1,所以 length 属性最大值等于 2^32-1。下面代码定义了一个空数组,然后为下标等于 100 的元素赋值,则 length 属性返回 101。因此,length 属性不能体现数组元素的实际个数。

javascript如何将字符串转为数组javascript如何将字符串转为数组Nov 23, 2022 pm 07:28 PM

3种转换方法:1、使用split(),可将给定字符串拆分为字符串数组,语法“str.split(分隔符,数组最大长度)”;2、利用扩展运算符“...”,可迭代字符串对象,将其转为字符数组,语法“[...str]”;3、使用Array.from(),可将字符串转为数组,语法“Array.from(str)”。

js数组可以转化成php数组吗js数组可以转化成php数组吗Jun 02, 2023 am 10:06 AM

js数组可以转化成php数组,其操作方法是:1、建立php示例文件;2、使用语法“JSON.stringify()”将js数组转化为JSON格式的字符串;3、使用语法“json_decode()”将JSON格式字符串转为PHP数组,此处添加了参数true,表示将JSON格式字符串转换成PHP关联数组。

js数组删除某个元素有几种方法js数组删除某个元素有几种方法Aug 02, 2023 am 10:09 AM

js数组删除某个元素有4种方法,分别是:1、使用splice;2、使用filter;3、使用pop方法和shift;4、使用delete关键字。

JS数组排序:sort()方法怎么用JS数组排序:sort()方法怎么用Dec 27, 2023 pm 03:40 PM

JavaScript的Array.prototype.sort()方法用于对数组的元素进行排序。此方法是就地排序,也就是说,它修改原始数组,而不是返回一个新的排序数组。默认情况下,sort()方法按照字符串Unicode码点值进行排序。这意味着它主要用于字符串和数字的排序,而不是用于对象或其他复杂数据类型的排序。

JavaScript怎么求数组长度和元素之和JavaScript怎么求数组长度和元素之和Sep 20, 2022 pm 02:11 PM

JavaScript中,可利用length属性来获取数组长度,语法“数组对象.length”;可使用reduce()或reduceRight()函数来求元素之和,语法“arr.reduce(function f(pre,curr){return pre+cur})”或“arr.reduceRight(function f(pre,curr){return pre+cur})”。

js数组怎么转为php数组js数组怎么转为php数组Mar 22, 2023 am 11:24 AM

在web开发中,由于JavaScript(JS)和PHP是两种最为常用的编程语言,因此数组在开发过程中是不可避免的。针对这种情况,很多时候我们需要将JS数组转为PHP数组。实现这种功能的方法有很多,下面将一一介绍。

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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

メモ帳++7.3.1

メモ帳++7.3.1

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

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境