js 入門 3.2資料型別
阿新 • • 發佈:2020-12-23
多維陣列
var arr = [
[1,2,3,4,5,6],
[1,2,3,4,5,6],
[1,2,3,4,5,6],
[1,2,3,4,5,6]
];
// 多維陣列的遍歷?
// 迴圈巢狀方式 遍歷多維陣列
for(var i = 0;i<arr.length;i++){
console.log(arr[i]);
var data = arr[i];
for(var j=0;j<data.length;j++){
console.log(data[j]);
}
}
練習一下將多維陣列運用到html中
document.write('<ul>')
var products = [
[{name:'蘋果',price:3},{name:'粒子',price:21}],
[{name:'蘋果',price:3},{name:'粒子',price:21} ],
[{name:'蘋果',price:3},{name:'粒子',price:21}],
[{name:'蘋果',price:3},{name:'粒子',price:21}]
]
for(var i=0;i<products.length;i++){
// console.log(products[i]);
var data=products[i]
for(var j=0;j<data.length;j++){
// document.write(data[j].name)
// document.write(data[j].price)
var name = data[j].name
var price = data[j].price
document.write(`
<li>
<sapn> 商品名稱:${name} </span>
<sapn> 商品價格:${price} </span>
</li>
`)
}
}document.write('</ul>')
物件
**
obj 賦值 物件
key:value 鍵值對的方式存在
key 表示物件下屬性,key一定是string型別
value 屬性賦值,js 的任意型別數
我們可以使用不同key 值表示不同的意義**
var obj = {
name:'xcy',
xg:{
td:'人小鬼大',
nz:{
td:{
dec:'還好'
}
}
}
}
obj.xxx 獲取的obj 下的屬性;
—>無該屬性===>返回為undefined 不會報錯
obj.xg.td;獲取obj下的xg物件的td屬性的值
總結: 點 左邊的型別全是object
鏈式呼叫
** obj.xg.nz.td.name;**
bug cannt read proptype ‘xp’ of undefined
—> ykl為andefined
obj.xg.ykl.xp
bug xg is not defied
—>xg變數 未宣告但是已經使用
var xg = ‘xg’
obj[xg] //obj[‘xg’]
物件建立
1.直接寫
var obj = {}
2.建構函式
new 關鍵字;作用:實用化物件
Object 內建api 作用構造物件
var obj1 = new Object()
console.log(obj1);
console.log(obj,'======obj');
obj1.a = 'a';//新增
obj.a = '修改';//更改
// 不能刪除屬性,但是可以清空
obj.a = null;
所有物件都有【建構函式】
console.log(obj.constructor);//獲取obj物件的建構函式
console.log(obj.constructor === obj.constructor);
內建物件之布林值物件
var bool = true;
// 獲取布林物件的建構函式
console.log(bool.constructor);
// Boolean() 是布林物件的建構函式
// 引數 true、false
var boolObj = new Boolean(true);
console.log(boolObj);
日期物件
如何例項化日期物件
Date() 例項化日期物件
引數:任意時間的日期字元
var date = new Date('2000-11-10 12:00:00');
console.dir(date);
如何獲取當前時間?
var nowDate = new Date();
console.dir(nowDate);
日期物件下有什麼屬性呢?
getDate getDay …… 獲取 年 月 日 時 分 秒
var year = nowDate.getFullYear();
console.log(year+'年');
注意 月份返回值 從 0-11 需要+1
var mount = nowDate.getMonth()+1;// 0-11
console.log(mount+'月');
var da = nowDate.getDate();
console.log(da+'日');
var day = nowDate.getDay(); // 0-6
console.log(day+'星期');
var hours = nowDate.getHours();
console.log(hours+'時');
var minutes = nowDate.getMinutes();
console.log(minutes+'分');
var seconds = nowDate.getSeconds();
console.log(seconds+'秒');
毫秒 1s = 1000ms
時間戳:具有唯一性;從1978年到現在的毫秒數和
var time = nowDate.getTime();
console.log(time);
數學物件
注意數學物件Math 與Number 是不同的物件
console.log(Math);
console.log(Number);
// π
let pai = Math.PI;
console.log(pai);
// 隨機數 0-1 包含0 不包括1
var random = Math.random();
console.log(random);
// 向上取整
var num = Math.ceil(1.3);
console.log(num);//2
// 向下取整
var num1 = Math.floor(1.7);
console.log(num1);//1
// 四捨五入
var num2 = Math.round(1.3);//1
var num3 = Math.round(1.7);//2
console.log(num2,num3);
// 絕度數
var abc = Math.abs(-1);//1
// 最大值
var max = Math.max(1,2,3,55);
console.log('最大值'+max);
// 最小值
var min = Math.min(2,3,5,7);
console.log('最小值'+min);
// x 的 y次冪