A. js 中如何取出數組中的值
var arr=[2,4,5,3,5,3,0];
var arrvalue;//用於存放取出的數組的值
for(var i=0;i<arr.length;i++){
arrvalue=arr[i];//數組的索引是從0開始的
console.log(arrvalue);//把取出的值列印在控制台上
}
js 獲取數組中的最大值和最小值
var arr = [3,12,23,18,25,33,22,30,1]
方案一: 思想 首先對數組進行排序(小 》大),第一項為最小值,最後一項為最大值
var min;
var max;
arr.soft(function(a,b){return a-b;})
min = arr[0];
max = arr[arr.length-1];
方案二:採用Math對象里的min()方法和 max()方法,需要將比較的數一個一個的傳遞進來才能比較,但是可以通過以下方式轉化即可;
var min = Math.min(arr);
console.log(min) // NAN
console.log(Math.min(3,12,23,18,25,33,22,30,1)) // 1
console.log(Math.max(3,12,23,18,25,33,22,30,1)) // 33
var min =eval("Math.min(" +arr.toString()+")"); // 1 採用字元串拼接
var min = eval("Math.max(" +arr.toString()+")");; // 33
var min = Math.min.apply(obj,arr) // 1 利用apply方法一項一項傳質的特點
var max =Math.max.apply(obj,arr) // 33
B. JS中怎麼求數組元素個數,arr.length不能求關聯數組個數,求出來是0
當然是0,因為你的數組內容是空的,一個元素都沒有
數組的話
arr['h']
=
123;//這種賦值方法是不支持的,在JS中所謂的關聯數組,其實是一個對象,模擬關聯數組的
var
arr
=
{},//創建一個對象
len
=
0;
arr["h"]
=
"hh";
arr["i"]
=
"gaj";
for(
var
i
in
arr)
{
len++;
}
alert(len);
//只能這么做的
上面的做法相當於:
var
arr
=
{
'h'
:
'hh',
'i'
:
'gaj'
}
C. js中arr的賦值不影響原數組,賦值和引用的區別
你說的是值類型和引用類型。
值類型都有一個獨立的內存區域保存自己的值。
引用類型指向的是內存中的地址。
var ary1=[]; // 第一次定義,分配內存a
var ary2=ary1; // ary2 指向了內存a
ary2[0] =123; // 其實就是改變了ary1[0]
值類型:
var a =1,b=a; // 這時 b=1
b=3 // b=3,a還是1,因為獨立的內存區域給B
D. javascript的數組arr怎麼用啊
var arr = new Array();//申明一個無長度的arr數組,也可以這樣:
//一維數組var arr = new Array("1","5","3"),
//二維數組,var arr = new Array(['1','2'],['3','4'])。還可以這樣
//var arr=[1,2,3,4,5,6,7,8,9];
arr[0] = 1;arr[2] = 5;arr[3] = 3;//進行賦值
for(var i = 0; i < arr.length - 1; i++) {//進行從大到小的排序
for(var j = 1; j < arr.length; j++) {
if(arr[i] < arr[j]) {
var temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
alert(arr.join("<"));//提示框中提示arr數組中的所有項且把沒個元素用『<』鏈接起來的字元
//串,其結果為:5<3<1。join(str)函數是把數組中的元素用str連接起來成
//字元串
E. 在js中: var arr=new Array(); arr[0]="asd"; arr[1]="dsa"; arr[8]="sad"; arr.length是多少求思路謝謝
長塵裂度是9
下面是測試代碼:
<html>
<head>
</head>
<body>
<script>
var arr=new Array();
arr[0]="asd";
arr[1]="dsa";
arr[8]="sad";
alert(arr.length + "");
</script>
<派神閉p id="a">before</p>
</body>
</html>
解釋:因為array是線性存儲的所以當你瞎悶申請arr[8]空間的時候他會自動申請前面的空間,所以長度是0-8,是9
F. js中arr=[]怎麼變成arr=[{id:1,name:b},{id:2,name:c}] 用push嗎
//看你抄數據格襲式了
比如:arr = [1,2,3,4],arr2 = [a,b,c,d],key=['id','name'];
如果是上面的:
varrs=[],arr=[1,2,3,4],arr2=[a,b,c,d],key=['id','name'];
rs=arr.map(function(item,index){
varobj={};
obj[key[0]]=arr[index];
obj[key[1]]=arr2[index];
returnobj;
});
console.log(rs);
G. js中arr是什麼意思,數組變數必須用這個定義嗎
這個只是一個名字
方便你識別它是一個數組;你也可以用起的名字;只要不起沖突
H. javascript中的arr 是什麼
arr把是JavaScript系統的東西,你老脊宴CTRL+f搜野橋索一下你的代碼,裡面可能有定義,看形式可能是一侍銀個類。
I. js中數組和對象循環遍歷
數組:
var arr = [『a』,『b』,'c'];
for (let i = 0;i<arr.length;i++){
console.log(i,arr[i])
};
對象:
var person = { name:'tom',age:'29',sex:'男『};
// 對象如果要用for循環來遍歷,需要先有Object.key()的方法來拿到手殲可迭代(遍歷)的私有屬性名的集合(數組)
var keys = Object.keys(person);
for (let i = 0;i<keys.length;i++){
console.log(keys[i]+":"+person[keys[i]]);
};
數組:
for(let key in arr){
// 值得注意的是,key為數組的索引,如若需要獲取屬性的值,則需要使用數組加索引下標 的形式來獲取
console.log(key,arr[key]);
}
對象:
for(let key in obj){
// 值得注意的是,key為對象的鍵名,鍵值要以obj[key]的方式來獲取
console.log(key,obj[key]);
}
數組:
for(let value of arr){
//值得注意的是,for...of跟for...in是不一樣的,for...in遍歷的是數組的索引,for...of遍歷的是數組的值
console.log(value);
}
對象:
for...in是不能單獨來遍歷一個對象的,會報錯。
如果對象是一個類數組對象,那用array.from方法轉成一個數組就可以用for...of來遍歷了。
或者結合Object.keys()方法來使用
for(let key of Object.keys(obj)){
// for...of遍歷輸出的也是鍵名
console.log(key,obj[obj]);
}
數組:
forEach()方法遍歷數組是沒有返回值
值得注意的是數組中有幾項,那麼傳遞進去的匿名回調函數拍啟就需要執行幾次;
arr.forEach((item,index,arr)=>{
console.log(item,index,arr)
)
// 其中item是數組中的當前項,index是數組中的當前下標,arr是原始數組
對象:
原則上forEach是用來遍歷數組的,不能遍歷對象,但是可以用Object.getOnwPropertyNames()方法來使得對象能被forEach遍歷出來。
Object.getOnwPropertyNames()返回一個數組,成員畢賀沖是參數對象自身全部屬性的屬性名,不管該屬性是否能被遍歷。
Object.getOnwPropertyNames(obj).forEach((item,index,arr)=>{
console.log(item,index,obj[item])
})
J. js中arr.shift()
你這里的斗晌可見代碼根本未對arr進行謹銷陸操作,怎麼會改變祥頃????
vararr=["1"]
console.info(arr);//['1']
console.info(arr.length);//1
arr.shift();
console.info(arr);//[]
console.info(arr.length);//0