博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Jquery真的不难~第七回 JS也要面向对象
阅读量:5754 次
发布时间:2019-06-18

本文共 2964 字,大约阅读时间需要 9 分钟。

 前几篇文章以JQ为主,本系列的八篇文章中,第一讲为JS基础,从第二讲开始到第六讲主要是JQ基础知识,而第七讲与第八讲是JS中的一些高级应用,写到这里,也快要和《Jquery真的不难》说再见了,有点舍不得,恩,连续的两天失眠,呵呵,不知道为什么,可能是兴奋过度了吧,呵呵,总之这几天的状态超级好,我喜欢这种感觉,非常感谢!

JS也要面向对象这个题目很大,我是搞C#开发的,而C#是个面向人性化的语言,呵呵,我更希望把面向对象改成面向人性化,呵呵,因为只有你把它拟人化之后,你才能更好的去学习吧,编程,上学时大多人说它是个枯燥的东西,编程课卓见变成了睡觉课,呵呵,但似乎从那里起,我就已经被代码吸引了,不知道为什么,但到今天我终于找到原因了,因为我把代码拟人化了,或者说我被代码拟人化了,呵呵!

一 函数实现的面向对象

     window.onload = function () {            //定义一下游戏功能的函数对象            var Game = function (canvas, options) {                var _options = options || { width: 300, height: 300, background: "#ff0000", border: "solid 1px black" };                var _pos = { x: _options.width / 2, y: _options.height / 2 };                var _this = this; //这样在canvas对象的事件内部可以向到root级的元素了                canvas.onmousemove = function (ev) {                    _pos = {                        x: ev.clientX - canvas.offsetLeft,                        y: ev.clientY - canvas.offsetTop                    };                    _options = { width: 100, height: 100, background: "#ffff00" };                    init();                }                var init = function () {                    canvas.style.position = "absolute";                    canvas.style.border = _options.border;                    canvas.style.background = _options.background;                    canvas.style.width = _options.width + "px";                    canvas.style.height = _options.height + "Px";                    canvas.style.left = _pos.x + "px";                    canvas.style.top = _pos.y + "px";                }                init();                this.Content("真的不错,扩展方法"); //不在本方法内实现,只是调用一下            }            Game.prototype.Content = function (msg) {
//在这样实现它的功能 console.log(msg); } var canvas = document.getElementById("canvas"); new Game(canvas); //如果想用Game里的扩展方法Content,需要new一下,因为Content属于实例方法}

二 通过JS对象实现的面向对象

       //一个人            var People = {                Name: "lose.zhang",                Age: 30,                Enjon: ["C#", "JS", "SQL", "NoSQL", "SOA", "AOP", "IOC", "DynamicProxy", "OOD&DDP"],                Print: function (msg) {                    console.log(msg);                },                Work: {                    Name: "Software Architect",                    Salary: "保密",                    Print: function () {                        console.log("这个人:" + People.Name                        + ",他的年龄:" + People.Age                        + ",他的特长是:" + People.Enjon                        + ",它的职位是:" + this.Name                        + ",它的薪水是:" + this.Salary);                    }                }            };            People.Work.Print();

恩,在这些代码实现过程中,有几个基础东西要撑握一下了:

声明变量:var x=1;

声明数组:var xArr=[];

声明对象:var xObject={};

声明函数:var xFunction=function(){};

函数实例:var xFunInstance=new xFunction();

函数扩展方法:XFunction().prototype.ExtensionForPrint(){};  //只有函数的实例对象,才能访问扩展方法

恩差不多了,就到这里吧!

感谢阅读!

本文转自博客园张占岭(仓储大叔)的博客,原文链接:,如需转载请自行联系原博主。

你可能感兴趣的文章