js学习笔记32----new

Posted 前端[色色]

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js学习笔记32----new相关的知识,希望对你有一定的参考价值。

new:用于创建一个对象。

 

有 new 与 无 new 时的区别,查看下面的示例代码应该会增加感觉:

<!DOCTYPE html>
<html lang="en">
    <head>
        <title>有 new 的时候</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <script>
           function show(){
               alert(this);
           }
           show(); //弹出 window
           new show(); //弹出 object ,会新创建一个对象
        </script>
    </head>
    <body>
    </body>
</html>

上一篇我们所讲的工厂方式存在的2个缺陷可以能过new来解决,优化后的代码如下:

<!DOCTYPE html>
<html lang="en">
    <head>
        <title>new</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <script>  
            function createPerson(name,sex){   //构造函数:创建一个对象
                //假想的系统内部工作流程
                //var this = new Object();

                this.name = name;
                this.sex = sex;

                this.showName = function(){
                    alert(\'我的名字叫\'+this.name);
                }
                this.showSex = function(){
                    alert(\'我是\'+this.sex+\'\');
                }

                //假想的系统内部工作流程
                //return this;
            }
            var p1 = new createPerson(\'sese\',\'\'); 
            var p2 = new createPerson(\'JJ\',\'\');
            p1.showName();
            p1.showSex();
            p2.showName();
            p2.showSex();         
        </script>
    </head>
    <body>
    </body>
</html>

 

以上是关于js学习笔记32----new的主要内容,如果未能解决你的问题,请参考以下文章

学习笔记:python3,代码片段(2017)

Xitrum学习笔记08 - JavaScript and JSON

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

DOM探索之基础详解——学习笔记

JS学习笔记

JS学习笔记