Javascript 学习 笔记六

简介: 1、javascript 面向对象<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xht

1、javascript 面向对象

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script type="text/javascript">
        //oDiv.onclick = function () {
        //    alert(this);
        //};
        window.onload = function () {
            var arr = [12, 65, 87];
            //this:当前的方法,属于谁
            //arr.show = function () {
            //    alert(this);
            //};
            arr.sssss = function () {
                alert('123');
            };
            arr.sssss();
        }
    </script>
</head>

<body>
</body>
</html>

我擦,代码竟然可以这么写

2、构造函数与原型

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script type="text/javascript">
        //构造函数
        function Person(name, sex) {
            this.name = name;
            this.sex = sex;
        }
        //原型
        Person.prototype.showName = function () {
            alert(this.name);
        };
        Person.prototype.showSex = function () {
            alert(this.sex);
        };
        var p = new Person('blue', '男');
        p.showName();
        p.showSex();
    </script>
</head>
<body>
</body>
</html>

小注:
每个对象有差异的东东,可以放到构造函数中,通用的可以使用原型

3、原型的优先级

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script type="text/javascript">
        Array.prototype.a = 12;
        var arr = [1, 2, 3];
        alert(arr.a);   //12
        arr.a = 5;
        alert(arr.a);   //5
        delete arr.a;
        alert(arr.a);   //12
    </script>
</head>
<body>
</body>
</html>

4、[Javascript中this关键字详解]

(http://blog.csdn.net/jiankunking/article/details/50413767)

5、事件绑定

IE方式

  • attachEvent(事件名称, 函数),绑定事件处理函数

  • detachEvent(事件名称, 函数),解除绑定

DOM方式

  • addEventListener(事件名称,函数, 捕获)

  • removeEventListener(事件名称, 函数, 捕获)

//1.谁
//2.事件
//3.函数
function AddEvent(obj, sEvent, fn)
{
    //IE
    if(obj.attachEvent)
    {
        obj.attachEvent('on'+sEvent, fn);
    }
    else
    {
        obj.addEventListener(sEvent, fn, false);
    }
}

6、绑定和this

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <meta charset="utf-8" />
    <script type="text/javascript">
        window.onload = function () {
            var oBtn = document.getElementById('btn1');
            /*oBtn.onclick=function ()
            {
                alert(this);
            };*/
            //IE    事件绑定        this->window
            /*oBtn.attachEvent('onclick', function (){
                alert(this==window);
            });*/
            //FF
            oBtn.addEventListener('click', function () {
                alert(this);
            }, false);
        };
    </script>
</head>
<body>
    <input id="btn1" type="button" value="aaa" />
</body>
</html>

7、匿名函数

匿名函数绑定事件无法解除绑定
与C #一样嘛

作者:jiankunking 出处:http://blog.csdn.net/jiankunking

相关文章
|
1月前
|
JavaScript 前端开发 开发者
VUE 开发——Node.js学习(一)
VUE 开发——Node.js学习(一)
61 3
|
28天前
|
JavaScript 前端开发 程序员
前端学习笔记——node.js
前端学习笔记——node.js
36 0
|
2月前
|
JavaScript
ES6学习(9)js中的new实现
ES6学习(9)js中的new实现
|
10天前
|
自然语言处理 JavaScript 前端开发
[JS]同事看了我做的this笔记,直摇头,坦言:我还是参考启发博文吧
本文介绍了JavaScript中`this`关键字的重要性和使用规则。作者回顾了早期笔记,总结了`this`指向的各种情况,并分享了最新的理解。文章强调了`this`在不同上下文中的指向,包括对象方法、全局函数、箭头函数等,并提供了改变`this`指向的方法。适合JavaScript开发者参考。
24 2
|
1月前
|
JavaScript
js学习--制作猜数字
js学习--制作猜数字
36 4
js学习--制作猜数字
|
1月前
|
JavaScript
webpack学习五:webpack的配置文件webpack.config.js分离,分离成开发环境配置文件和生产环境配置文件
这篇文章介绍了如何将webpack的配置文件分离成开发环境和生产环境的配置文件,以提高打包效率。
44 1
webpack学习五:webpack的配置文件webpack.config.js分离,分离成开发环境配置文件和生产环境配置文件
|
2月前
|
算法 JavaScript 前端开发
第一个算法项目 | JS实现并查集迷宫算法Demo学习
本文是关于使用JavaScript实现并查集迷宫算法的中国象棋demo的学习记录,包括项目运行方法、知识点梳理、代码赏析以及相关CSS样式表文件的介绍。
第一个算法项目 | JS实现并查集迷宫算法Demo学习
|
2月前
|
JavaScript 前端开发 API
紧跟月影大佬的步伐,一起来学习如何写好JS(上)
该文章跟随月影老师的指导,探讨了编写优质JavaScript代码的三大原则:各司其职、组件封装与过程抽象,通过具体示例讲解了如何在实际开发中应用这些原则以提高代码质量和可维护性。
紧跟月影大佬的步伐,一起来学习如何写好JS(上)
|
2月前
|
JavaScript 前端开发 Java
JavaScript笔记(回顾一,基础知识篇)
JavaScript基础知识点回顾,包括语言定义、ECMAScript规范、字面量、变量声明、操作符、关键字、注释、流程控制语句、数据类型、类型转换和引用数据类型等。
JavaScript笔记(回顾一,基础知识篇)
|
1月前
|
JavaScript
js学习--制作选项卡
js学习--制作选项卡
36 4