自己做網站的過程徐州百度推廣公司
目錄
前言
日期
1. 創(chuàng)建日期對象
2. 年/月/日
3. 時:分:秒:毫秒
4. 一周的第幾天
5. 經歷的毫秒數
6. 修改日期和時間
Math
1. 自然對數和圓周率
2. 絕對值
3. 最小最大
4. 求冪
5. 四舍五入
6. 隨機數
自定義對象
1. 通過 new Object 創(chuàng)建對象
2. 通過 function 設計一個對象(構造函數)
3. 為已經存在的對象,增加新的方法
添加到對象的原型(推薦)
直接添加到對象的實例(不推薦,但可行)
結語
前言
在JavaScript編程的旅途中,我們經常會遇到需要處理日期、數學運算以及創(chuàng)建和使用自定義對象的情況。這些基礎而重要的概念構成了JavaScript編程的核心部分,無論是在前端開發(fā)還是后端開發(fā)中,它們都扮演著不可或缺的角色。
通過本文的學習,你將能夠掌握這些基本概念,并能夠在自己的項目中靈活運用它們。無論你是JavaScript的初學者還是有一定經驗的開發(fā)者,相信本文都能為你提供有價值的參考和啟示。
日期
1. 創(chuàng)建日期對象
在JavaScript中,你可以使用Date
對象來存儲和操作日期和時間。Date
對象可以自動獲取當前的日期和時間,或者你可以給它指定一個特定的日期和時間。
// 創(chuàng)建一個表示當前日期和時間的Date對象
let now = new Date();
console.log(now); // 輸出類似 "Wed Jun 30 2023 15:49:02 GMT+0800 (中國標準時間)" // 創(chuàng)建一個表示特定日期和時間的Date對象
let specificDate = new Date(2023, 5, 30, 10, 30, 0, 0); // 注意月份是從0開始的,所以6月是5
console.log(specificDate); // 輸出類似 "Sat Jun 30 2023 10:30:00 GMT+0800 (中國標準時間)"
2. 年/月/日
你可以使用getFullYear()
, getMonth()
, 和 getDate()
方法來獲取日期的年、月和日。
let date = new Date(2023, 5, 30);
console.log(date.getFullYear()); // 輸出 2023
console.log(date.getMonth() + 1); // 輸出 6,因為月份是從0開始的
console.log(date.getDate()); // 輸出 30
3. 時:分:秒:毫秒
你可以使用getHours()
, getMinutes()
, getSeconds()
, 和 getMilliseconds()
方法來獲取時間的小時、分鐘、秒和毫秒。
let time = new Date();
console.log(time.getHours()); // 輸出當前小時
console.log(time.getMinutes()); // 輸出當前分鐘
console.log(time.getSeconds()); // 輸出當前秒
console.log(time.getMilliseconds()); // 輸出當前毫秒
4. 一周的第幾天
你可以使用getDay()
方法來獲取日期是一周中的第幾天(0代表星期日,1代表星期一,以此類推)。
let dayOfWeek = new Date(2023, 5, 30).getDay();
console.log(dayOfWeek); // 輸出 6,因為2023年6月30日是星期六
5. 經歷的毫秒數
你可以使用getTime()
方法來獲取從1970年1月1日00:00:00 UTC(世界標準時間)到當前日期和時間的毫秒數。
let timeInMilliseconds = new Date().getTime();
console.log(timeInMilliseconds); // 輸出從1970年1月1日到現在的毫秒數
6. 修改日期和時間
你可以使用setFullYear()
, setMonth()
, setDate()
, setHours()
, setMinutes()
, setSeconds()
, 和 setMilliseconds()
方法來修改日期和時間。
let date = new Date(2023, 5, 30);
date.setFullYear(2024); // 修改年份為2024
date.setMonth(0); // 修改月份為1月(注意月份是從0開始的)
date.setDate(1); // 修改日期為1日
console.log(date); // 輸出類似 "Wed Jan 01 2024 00:00:00 GMT+0800 (中國標準時間)"
Math
1. 自然對數和圓周率
Math
對象提供了對自然對數(Math.LN2
、Math.LNE
、Math.LOG2E
、Math.LOG10E
)和圓周率(Math.PI
)的訪問。
// 圓周率
console.log(Math.PI); // 輸出 3.141592653589793(近似值) // 自然對數相關的常量
console.log(Math.LN2); // 輸出 0.6931471805599453(ln(2) 的值)
console.log(Math.LNE); // 輸出 1(e 的自然對數的值,即 ln(e))
console.log(Math.LOG2E); // 輸出 1.4426950408889634(e 的以2為底的對數的值)
console.log(Math.LOG10E); // 輸出 0.4342944819032518(e 的以10為底的對數的值)
2. 絕對值
使用Math.abs()
方法可以計算一個數的絕對值。
console.log(Math.abs(-5)); // 輸出 5
console.log(Math.abs(10)); // 輸出 10
3. 最小最大
Math.min()
和Math.max()
方法用于找出一組數值中的最小值和最大值。
console.log(Math.min(1, 2, 3, 4, 5)); // 輸出 1
console.log(Math.max(1, 2, 3, 4, 5)); // 輸出 5
4. 求冪
Math.pow()
方法用于計算一個數的冪。
console.log(Math.pow(2, 3)); // 輸出 8(2的3次方)
console.log(Math.pow(3, 2)); // 輸出 9(3的2次方)
5. 四舍五入
Math
對象提供了幾種四舍五入的方法:
Math.round()
:標準四舍五入。Math.floor()
:向下取整。Math.ceil()
:向上取整。
console.log(Math.round(4.5)); // 輸出 5
console.log(Math.floor(4.5)); // 輸出 4
console.log(Math.ceil(4.5)); // 輸出 5
6. 隨機數
Math.random()
方法用于生成一個[0, 1)之間的偽隨機數。
// 生成一個 0 到 1 之間的隨機數
let randomNum = Math.random();
console.log(randomNum); // 生成一個指定范圍內的隨機數(例如,1 到 10 之間)
let min = 1;
let max = 10;
let randomNumInRange = Math.random() * (max - min) + min;
console.log(randomNumInRange);
自定義對象
1. 通過 new Object
創(chuàng)建對象
在JavaScript中,你可以使用new Object()
來創(chuàng)建一個新的空對象,然后為其添加屬性和方法。
// 創(chuàng)建一個新的空對象
let person = new Object(); // 為對象添加屬性
person.name = "Alice";
person.age = 30; // 為對象添加方法
person.greet = function() { console.log(`Hello, my name is ${this.name}`);
}; // 調用方法
person.greet(); // 輸出: Hello, my name is Alice
2. 通過 function
設計一個對象(構造函數)
更常見的做法是使用函數作為構造函數來創(chuàng)建對象。這種方式可以通過new
關鍵字來調用構造函數,并創(chuàng)建具有相同屬性和方法的新對象。
// 定義一個構造函數
function Person(name, age) { this.name = name; this.age = age; // 為對象添加方法 this.greet = function() { console.log(`Hello, my name is ${this.name}`); };
} // 使用new關鍵字和構造函數來創(chuàng)建對象
let person1 = new Person("Bob", 25);
let person2 = new Person("Charlie", 35); // 調用方法
person1.greet(); // 輸出: Hello, my name is Bob
person2.greet(); // 輸出: Hello, my name is Charlie
3. 為已經存在的對象,增加新的方法
如果你已經有一個對象,并且想要為其添加新的方法,你可以直接為對象的原型添加方法,或者直接為對象的實例添加方法。但請注意,直接在對象實例上添加方法通常不推薦,因為這會導致每個實例都有自己的方法副本,而不是共享同一個方法。
添加到對象的原型(推薦)
// 假設我們已經有了一個Person構造函數
function Person(name, age) { this.name = name; this.age = age;
} // 為Person的原型添加方法
Person.prototype.greet = function() { console.log(`Hello, my name is ${this.name}`);
}; // 創(chuàng)建對象
let person3 = new Person("David", 40); // 調用方法
person3.greet(); // 輸出: Hello, my name is David
直接添加到對象的實例(不推薦,但可行)
// 假設我們已經有了一個Person的實例
let person4 = { name: "Eve", age: 20
}; // 為這個特定的實例添加方法
person4.greet = function() { console.log(`Hello, my name is ${this.name}`);
}; // 調用方法
person4.greet(); // 輸出: Hello, my name is Eve // 注意:這種方法只會影響person4這個特定的實例,不會影響其他Person實例。
結語
下一節(jié)有本文的練習題。有需要的碼客們可以去看一下
經過本文的學習,你已經對JavaScript中的日期處理、數學運算和自定義對象有了深入的了解。Date
對象使你能夠輕松地創(chuàng)建、操作和格式化日期;Math
對象提供了一系列強大的數學方法和常量,幫助你進行復雜的數學運算;而自定義對象則是你實現模塊化、封裝和復用的關鍵。
這些基礎知識不僅是你編寫高效、健壯的JavaScript代碼的基礎,也是你成為一名優(yōu)秀JavaScript開發(fā)者的必經之路。希望你在今后的學習和實踐中,能夠不斷鞏固和擴展這些知識,并探索JavaScript更多的高級特性和應用。
最后,感謝你的閱讀和學習。相信在JavaScript編程的道路上,你會越走越遠,取得更加輝煌的成就!
respect!