新聞中心
好程序員Java學習路線分享JS中的面向?qū)ο螅贘S中,一般情況下我們都是直接寫函數(shù),直接調(diào)用,但是發(fā)現(xiàn)JS中也有new關鍵字,那么new關鍵字作為創(chuàng)建對象的關鍵字,給我們的感覺就是在JS中可以定義一個類,然后用new創(chuàng)建對象,那么在JS中如何做呢?我們先看如下案例,下面的案例是寫一個簡單的噴泉效果的。
創(chuàng)新互聯(lián)公司服務項目包括大同網(wǎng)站建設、大同網(wǎng)站制作、大同網(wǎng)頁制作以及大同網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構等提供互聯(lián)網(wǎng)行業(yè)的解決方案,大同網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到大同省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!
window.onload = function(){
// 創(chuàng)建一個畫布對象
var canvas = document.createElement("canvas");
// 設置大小和顏色
canvas.width = window.innerWidth;
canvas.height = window.innerHeight;
canvas.style.backgroundColor = "#333333";
// 將畫布放置到body里
document.body.appendChild(canvas);
// 得到畫筆
var context = canvas.getContext("2d");
// 定義一個存放所有粒子的數(shù)組
var particles = [ ];
// 調(diào)用顯示粒子
showParticle();
// 創(chuàng)建并顯示粒子的方法
function showParticle(){
// 循環(huán)操作
setInterval(function(){
// 清空畫布
context.clearRect(0,0,canvas.width, canvas.height);
// 創(chuàng)建粒子
var p = new Particle(canvas.width 0.5, canvas.height 0.5);
// 將粒子裝入存放粒子的數(shù)組
particles.push(p);
// 循環(huán)更新所有粒子的位置
for (var i = 0;i
particles[i].updateData();
}
}, 50);
}
function Particle(x, y){
// 原坐標
this.x = x;
this.y = y;
// 初始出現(xiàn)的改變的y的值
this.yVal = -5;
// 改變的x的值
this.xVal = Math.random() 8 - 4;
// 定義一個下降的重力加速度
this.g = 0.1;
// 更新位置
this.updateData = function(){
// X值的變化
this.x = this.x + this.xVal;
// Y值的變化
this.y = this.y + this.yVal;
// 每次改變Y值速度的變化
this.yVal = this.yVal + this.g;
// 生成一個隨機顏色
context.fillStyle = "#" + Math.floor(Math.random() 0xffffff).toString(16);
// 將更新位置后的圓繪制出來
this.draw();
};
// 繪圖的方法
this.draw = function(){
// 開始畫圖
context.beginPath();
// 畫圓
context.arc(this.x, this.y,5,0,Math.PI * 2, false);
// 結束畫圖
context.closePath();
// 填充
context.fill();
};
}
};
在以上案例中,我們使用了new Particle來創(chuàng)建了一個對象,可以看到Particle其實也是一個function,那么它跟其他的function有啥區(qū)別呢?我們發(fā)現(xiàn),里面定義的變量前面用了一個this關鍵字,定義的方法也用到了this關鍵字,這和Java中的this很相似,在上面的案例中,就可以使用new出來的變量來調(diào)用這些this后面的變量和函數(shù),這就是一種在JS中創(chuàng)建對象的方式。
當前標題:好程序員Java學習路線分享JS中的面向?qū)ο?
分享地址:http://www.ef60e0e.cn/article/pooepc.html