青い部分:元の配列内のアクション;ピンクパート:操作ではないことが、元の配列には、使用中に、新しい変数を戻り値を受け取ります
JavaScriptを
|
PHP
|
|
定義 |
1.方法リテラル:VAR ARR = [1,2,3]。
2.コンストラクタ:
VARの
ARR
=アレイ新新( "ABC")
;
|
1.定義通常の配列
$ ARR = [1,2,3]。
$ ARR =アレイ(1,2,3)。
連想配列を定義します。2.
$ ARR =アレイ(=> 100 "F" "" => 10、 "B" => 5)。
|
後ろから配列要素を追加します。
(下付き文字は、自動的に蓄積します)
|
arr.push( "ABC"); |
1.array_push($ arrが、100);
2. $のARR [] = "";
|
正面から配列要素を追加します。 | ( "AAA"、3)arr.unshift。 | するarray_unshift($ ARR、200); |
末尾から要素を削除します。 | arr.pop(); | ($ ARR)array_pop。 |
最初から要素を削除します | arr.shift(); | array_shift($ ARR)。 |
任意の位置を追加または削除 |
arr.spice(1,0,100,200)。
削除
:
パラメータ1:添字、二つのパラメータの初期位置:削除の数
追加
:パラメータ1:indexパラメータ2の初期位置:0、
パラメータ3:新しい要素を追加するには(要素が位置を削除するデフォルトで追加されます)
追加と削除]
:パラメータ1:下の標準の初期位置、パラメータ2:削除数、
新しい要素を追加するには、次のパラメータを3
最後に追加
:
arr.splice(arr.leng
TH、
0
、
1000
)。
エンドを削除
:
arr.splice(arr.lengの
TH
-
1
、
1
)。
|
1.unset($ ARR [1]);
//は、インデックス1にある要素を削除する
(添字並び替えません)
2.array_splice($ ARR、1,2、[11,22,33])。
//二つの位置から削除要素が1を標識し、「11,22,33」に置き換えます
|
傍受配列 |
VAR ARR1 = arr.slice(0,4);インデックス開始位置、終了位置添字)
パラメータ2を省略すると、デフォルトの切断端
先頭から取ら終わりから3番目:VAR ARR2 = arr.slice(-3)。
|
$ subArr = array_slice($ ARR、1,1)。
2つのパラメータ:開始位置を取り、3つのパラメータ:長さがとら
|
文字列に配列 |
1.var STR = arr.toString()。
2.var STR = arr.join(「**」);文字列に同時に、「**」セパレータと各要素と
カスタムパラメータセパレータは、デフォルトはカンマです
|
|
アレイのフリップフロップ素子 | arr.reverse(); [1,2,3,4]スイッチ[4,3,2,1] |
$ A =配列( "" => "ボルボ"、 "B" => "BMW"、 "C" => "トヨタ")。
($)array_reverse。
|
配列のマージ |
ここで、R1 = [1,2]。編曲2 = [3,4]でした。たARR3 = [3,4]。
VAR mixArr = arr1.concat(ARR2、ARR3)。
|
|
コピー |
VAR copyArr = arr.concat()。
元の配列の変更のコピーやコピーは、別のには影響しません後
|
|
アレイの各処理要素
要素の値を変更します。
|
//新しい配列、缶も文字列の連結を形成するために、各番号100を追加
VARマー= arr.map(関数(値){
100 +値+ "PX" を返します。
});
|
// 10の新しい配列を形成するために、各番号を追加
$ newArr = array_mapを(関数($値){
戻り値$ + 10。
}、$ arrが);
|
反復 |
arr.forEach(function(value,index){
console.log(value,index);
});
参数是一个回调函数,数组有几个元素,回调函数就会被调用多少次
回调函数的参数1获取到的是值,参数2获取到下标
|
//1.遍历普通数组
for($i = 0; $i < count($arr); $i++){
echo $arr[$i]."<br>";
}
//2.遍历关联数组
foreach($arr as $key =>$value){//$value是遍历出来的值,$key是键
echo '$key = '.$key.'=>$value ='.$value;
}
|
查找元素 |
var arr=["a","b","a"];
var index = arr.indexOf("a")r;
//查找到数组a
r中的a
(找到第一个就结束)
返回值:这个元素的下标,若没找到返回-1
参数1:要找的元素,参数2:从哪个下标位置开始找
|
1.
//找到返回1,否则:false
$arr = ["a","b","c"];
$res = in_array("a",$arr);
2.
//找到返回下标(键值),找不到返回false
array_search(32,$arr);
|
查找元素(找到符合条件所有元素,数组形式返回) |
arr = [100,101,200];
//找到大于100的
var filArr=arr.filter(function(value){
//回调函数的参数是每个元素
return value>100;
//条件
});
|
|
查找元素(找到符合条件的第一个元素,返回该值) |
arr = [100,101,200];
//找到大于100的
var filArr=arr.find(function(value){
//回调函数的参数是每个元素
return value>100;
//条件
});
|
|
判断是否数组中所有元素都满足条件 |
//判断是不是每一个都>10
var arr = [100,101,200];
var rel=arr.every(function(value){
//回调函数的参数是每个元素
//条件,
有一个元素不满足就返回false停止继续回调
every函数返回false
return value>10;
});
every()函数返回值为bool类型
|
|
判断是否数组中是否存在满足条件的元素 |
var rel=arr.some(function(value){
return value==101;
//有一个满足就返回true停止回调
some函数返回true,
若都不满足返回false
});
|
|
排序 |
var names = ["a","b","c"];
names.sort();
//不能正常排序数字数组,因为默认是以首字母方式排序
//用回调函数来修改排序方式
numbers.sort(function(a,b){
// return a>b;//从小到大
return a<b;
//从大到小
});
|
rsort($arr);
//降序排列
sort();
//升序排列
asort();
//根据关联数组的值,升序排列
arsort();
//根据关联数组的值,降序排列
ksort();
//根据关联数组的键,升序排列
krsort();
//根据关联数组的键,降序排列
|
返回数组的长度 | arr.length; |
$cars=array("Volvo","BMW","Toyota");
echo count($cars);
//3
|