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月前
|
Web App开发 JavaScript 前端开发
如何学习JavaScript?
如何学习JavaScript?
39 5
|
2月前
|
JavaScript 前端开发 开发者
VUE 开发——Node.js学习(一)
VUE 开发——Node.js学习(一)
84 3
|
2月前
|
JavaScript 前端开发 程序员
前端学习笔记——node.js
前端学习笔记——node.js
49 0
|
1月前
|
JavaScript 前端开发 索引
JavaScript学习第二章--字符串
本文介绍了JavaScript中的字符串处理,包括普通字符串和模板字符串的使用方法及常见字符串操作方法如`charAt`、`concat`、`endsWith`等,适合前端学习者参考。作者是一位热爱前端技术的大一学生,专注于分享实用的编程技巧。
24 2
|
1月前
|
存储 JavaScript 前端开发
JavaScript学习第一章
本文档介绍了JavaScript的基础知识,包括其在网页中的作用、如何通过JavaScript动态设置HTML元素的CSS属性,以及JavaScript中的变量类型(`var`、`let`、`const`)和数据类型(基本数据类型与引用数据类型)。通过实例代码详细解释了JavaScript的核心概念,适合初学者入门学习。
50 1
|
1月前
|
自然语言处理 JavaScript 前端开发
[JS]同事看了我做的this笔记,直摇头,坦言:我还是参考启发博文吧
本文介绍了JavaScript中`this`关键字的重要性和使用规则。作者回顾了早期笔记,总结了`this`指向的各种情况,并分享了最新的理解。文章强调了`this`在不同上下文中的指向,包括对象方法、全局函数、箭头函数等,并提供了改变`this`指向的方法。适合JavaScript开发者参考。
48 2
|
2月前
|
JavaScript
js学习--制作猜数字
js学习--制作猜数字
42 4
js学习--制作猜数字
|
2月前
|
JavaScript
webpack学习五:webpack的配置文件webpack.config.js分离,分离成开发环境配置文件和生产环境配置文件
这篇文章介绍了如何将webpack的配置文件分离成开发环境和生产环境的配置文件,以提高打包效率。
52 1
webpack学习五:webpack的配置文件webpack.config.js分离,分离成开发环境配置文件和生产环境配置文件
|
3月前
|
算法 JavaScript 前端开发
第一个算法项目 | JS实现并查集迷宫算法Demo学习
本文是关于使用JavaScript实现并查集迷宫算法的中国象棋demo的学习记录,包括项目运行方法、知识点梳理、代码赏析以及相关CSS样式表文件的介绍。
第一个算法项目 | JS实现并查集迷宫算法Demo学习
|
3月前
|
JavaScript 前端开发 API
紧跟月影大佬的步伐,一起来学习如何写好JS(上)
该文章跟随月影老师的指导,探讨了编写优质JavaScript代码的三大原则:各司其职、组件封装与过程抽象,通过具体示例讲解了如何在实际开发中应用这些原则以提高代码质量和可维护性。
紧跟月影大佬的步伐,一起来学习如何写好JS(上)
下一篇
DataWorks