1、先用js定義一個變數,就是一個字元串的變數,如圖,字元串用逗號隔開。
⑵ JS裡面怎麼定義數組
var sc=new Array();就這樣sc[0] = "素材\階段專4\content1.jpg";
sc[1] = "素材\階段4\content2.jpg";
sc[2] = "素材\階段4\foot.jpg";你寫的對屬
⑶ js怎麼能把數組中的數據放到放到ul裡面的li裡面去形成列表
<script>
vararr=newArray("數據一","數據二","數據三","數據四","數據五");
varlist="";
for(vari=0;i<arr.length;i++)
{
list+="<li>"+arr[i]+"</li>";
}
document.getElementById('box').innerHTML=list;
</script>
<ulid='box'></ul>
⑷ 詳談js中數組和對象的區別
學習javascript的時候,我曾經一度搞不清楚」數組」(array)和」對象」(object)的根本區別在哪裡,兩者都可以用來表示數據的集合。
比如有一個數組a=[1,2,3,4],還有一個對象a={0:1,1:2,2:3,3:4},然後你運行alert(a[1]),兩種情況下的運行結果是相同的!這就是說,數據集合既可以用數組表示,也可以用對象表示,那麼我到底該用哪一種呢?
我後來才知道,數組表示有序數據的集合,而對象表示無序數據的集合。如果數據的順序很重要,就用數組,否則就用對象。
當然,數組和對象的另一個區別是,數組的數據沒有」名稱」(name),對象的數據有」名稱」(name)。
但是問題是,很多編程語言中,都有一種叫做」關聯數組」(associative array)的東西。這種數組中的數據是有名稱的。
⑸ js數組聲明方式
實際上並沒有什麼區別,可以根據不同需求來. 比如: 聲明一個長度200的數組,元... 容易在使用上造成錯誤。 有些人從其他語言(例如Java)學過來學或教JS的人會認為像
⑹ 用JS代碼實現給定一個數組,[1,2,3,4,5,6,7,8,9],分別求它們的立方。
var arr1 = [1,2,3,4,5,6,7,8,9];
var arr = arr1.map(function(item,index,array){
return item*item*item;
})
返回的新數組arr則是元素立方運算後的新數組
⑺ JS數組方法
數組的創建方式
1.字面量的形式: var arr=[1,2,3];
1.構造函數: var arr1=new Array();//不常用
Array構造函數有一個很大的缺陷,就是不同的參數,會導致它的行為不一致。
1.單個數值作為參數,參數表示數組的元素個數
可以看到,Array作為構造函數,行為很不一致。因此,不建議使用它生成新數組,直接使用數組字面量是更好的做法。
push/pop/unshift/shift//增加、刪除元素 (數組的方法,所以使用時應調用
數組名.方法名())
arr. slice/splice//截取元素
arr.slice(); 原數組不發生改變
無參數時,返回原數組,相當於數組的復制。
一個參數時,從參數作為下標的元素截取,至數組結束。
二個參數時,從第一個參數作為下標(索引)的元素開始截取,到第二個參數作為下標的元素結束,但不包括第二個參數作為下標的函數。 (起始元素包含,結尾元素不包含)
多個參數時,前兩個參數起效,後邊的參數無效。
arr.splice(); 原數組改變
無參數時,返回空數組。
一個參數時,從參數作為下標的元素截取,至數組結束。
二個參數時,從第一個參數作為下標(索引)的元素開始截取,即表示截取的起始位置,第二個參數表示截取的元素個數。
多個參數時,前兩個參數起效,後邊的參數從原數組的截取起始位置開始填充,填充到原數組。
reverse/sort//改變元素位置
arr.reverse(); //數組翻轉(元素位置顛倒)
arr.sort(); 從小到大排序,但遵循的是字元串的按位比較規則,所以排序結果容易出現異常。
join();//不改變原數組
join() 以指定參數作為連接符,將所有數組成員連接為一個字元串返回。如果不提供參數,默認用逗號分隔。
concat();//拼接數組 不改變原數組
ES5新增數組操作方法
indexOf (item) 返回元素在數組中對應的索引值,找不到的話,返回-1,用以測試元素是否存在於數組中
forEach(function(item,index)) 遍歷數組,沒有返回值
map(function(item,index)) 遍歷數組,存在返回值
filter(function(item)) {return item>2} 返回大於2的元素
some 返回布爾值,條件部分成立|| arr.some(function(item){return item>2} )
every 返回布爾值,條件全部成立&& arr.every(function(item){return item>2} )
rece (對數組中的所有元素調用指定的回調函數。該回調函數的返回值為累積結果,並且此返回值在下一次調用該回調函數時作為參數提供。)arr.rece(function(a,b){return a+b;});
toString()和toLocaleString()
功能:將數組的每個元素轉化為字元串,並且輸出用逗號分隔的字元串列表。功能類似join();
參數:無
輸出:字元串
indexOf()和lastIndexOf()
功能:搜索整個數組中具有給定值的元素,返回找到的第一個元素的索引或者如果沒有找到就返回-1;lastIndexOf為反向搜索。
參數:元素的值,起點索引(可選)
輸出:索引值或-1
Array.from()
功能:將兩類對象轉為真正的數組:類似數組的對象和可遍歷的對象
參數:待轉換的對象,第二個參數可選,作用類似於數組的map方法,用來對每個元素進行處理,將處理後的值放入返回的數組。
輸出:數組
Array.of()
功能:將一組值,轉換為數組。
參數:數組元素
輸出:數組
Within()
功能:在當前數組內部,將指定位置的成員復制到其他位置,返回變化後的數組。
參數:索引(從該位置開始替換數據);索引(從該位置開始讀取數據,默認為0,負值表示倒數);索引(到該位置前停止讀取,默認為最大索引)
輸出:返回當前替換後的數組。
注意:改變了當前數組
find()和findIndex()
功能:找到第一個符合條件的數組成員。
參數:回調函數,所有數組成員依次執行該函數,直到找到第一個返回值為true的成員。回調函數可以接受三個參數,依次為值,位置,原數組。
輸出:find()返回找到的成員;findIndex()返回成員的位置。
fill()
功能:使用給定的值,填充一個數組。
參數:第一個參數為待填充的值,第二和第三參數可選,分別表示填充的起始和結束位置(不包括)。
輸出:填充後的數組
entries()、keys()、values()
功能:用於遍歷數組,可以用for…of循環進行遍歷。區別是keys()是對鍵名的遍歷、values是對鍵值的遍歷、entries()是對鍵值對的遍歷。
參數:無
輸出:遍歷器對象
includes()
功能:表示某個數組是否包含給定的值
參數:第一個參數必選(待檢查的給定值),第二個參數可選,表示搜索的起始位置,默認為0,負數表示倒數的位置。
輸出:一個布爾值。
注意:和indexOf的區別,indexOf進行了運算符的強比對,會導致對NaN誤判。
⑻ JS 基礎之數組與偽數組
- window.Array 全局對象(也是函數)
(1) 創建數組
注意: Array 加 new 與不加 new 效果都一樣。
結論:1. number , string , boolean 等基本數據類型對應的構造函數,不加 new 的話返回的還是基本數據類型,加 new 的話返回的是復雜類型即對象( object )。
2. object ( array , function )等對應的構造函數,加 new 與不加 new 形式都一樣。
window.Function 全局對象(也是函數)
注意:加不加 new 結果一樣
1.具名函數
2.匿名函數
3.具名函數 + var
4.window.Function + var
注意: function 關鍵字 用來聲明一個函數。
Function 全局對象
一般不推薦用第四種。
人類理解:數組就是數據的有序集合
JS理解:數據就是原型鏈中有 Array.prototype 的對象
偽數組 :1.有 0,1,2,3,4,5...n,length 這些 key 的對象。
2.原型鏈中沒有 Array.prototype 。
目前知道的偽數組: arguments 對象
document.querySelectAll('div') 返回的對象
1. Array.prototype.forEach
使用forEach時需要接受一個函數,這個函數必須接受兩個函數。
3. Array.prototype.join
將一個數組的所有元素連接成一個字元串並返回這個字元串。
7. Array.prototype.rece
遍歷一個數組,每次取個結果,並放到下一項身上。
注意:最後一段是箭頭寫法,比較美觀。