Javascript 怎么创建File对象

 我来答
好程序员
2016-09-21 · HTML5前端培训/大数据培训/Java
好程序员
好程序员是IT高端课程培训基地,从平凡到卓越,为梦想而拼搏。
向TA提问
展开全部

1、对已有对象进行扩充方法和属性

 var object = new Object();
    object.name = "zhangsan";//每个对象需要写这些语句
    object.sayName = function(name){//每个对象需要写这些语句
        this.name = name;
    };
    object.sayName("lisi");
    alert(object.name);

    

2、工厂方式创建对象

 function createObject() {
        var object = new Object();
        object.username = "zhangsan";
        object.password = "123456";
        object.get = function(){
            alert(this.username + "," + this.password);
        }
        return object;
    }
    var object1 = createObject();
    var object2 = createObject();
    object1.get();
    object2.get();

    // 带参数的构造方法
    function createObject(username, password){
        var object = new Object();
        object.username = username;
        object.password = password;
        object.get = function(){//缺点是,多少个对象则方法就有多少个
            alert(this.username + ", " + this.password);
        }
        return object;
    }
    var object1 = createObject("zhangsan",123456);
    object1.get();

    // 最佳改进方式
    function get(){//使该函数被多个对象共享
        alert(this.username + ", " + this.password);
    }
    function createObject(username, password){//创建对象
        var object = new Object();
        object.username = username;
        object.password = password;
        object.get = get;
        return object;
    }
    var object1 = createObject("zhangsan", "123456");
    var object2 = createObject("wangwu", "654321");
    object1.get();
    object2.get();


3、构造函数方式创建对象

 function Person(){
        //在执行第一行代码欠,js引擎会为我们生成一个对象
        this.username = "zhangsan";
        this.password = "123";
        this.getInfo = function(){
            alert(this.username + ", " + this.password);
        }
        //此处有一个隐藏的return语句,用于将之前生成对象返回。
    }
    var p1 = new Person();
    p1.getInfo();

    //带参数
    function Person(username, password){
        this.username = username;
        this.password = password;
        this.getInfo = function(){
            alert(this.username + ", " + this.password);
        }
    }
    var p1 = new Person("zhangsan","1234546");
    p1.getInfo();


4、原型(“prototype”)方式

function Person(){}
    Person.prototype.username = "zhangsan";
    Person.prototype.password = "123456";
    Person.prototype.getInfo = function(){
        alert(this.username + ", " + this.password);
    }

    var person = new Person();
    var person2 = new Person();
    person.username = "haha";
    person.getInfo();
    person2.getInfo();


    //单纯使用原型方式定义对象无法在构造函数中为属性赋值,只能在对象生成后再去改变属性值
    function Person(){}

    Person.prototype.username = new Array();
    Person.prototype.password = "123456";

    Person.prototype.getInfo = function(){
        alert(this.username + ", " + this.password);
    }

    var person = new Person();
    var person2 = new Person();
    person.username.push("zhangsan");
    person.username.push("lisi");
    person.password = "321";
    person.getInfo();
    person2.getInfo();


5、综合方式(原型+构造函数方式搭配)

  function Person(){
        this.username = new Array();//不被多个对象共享
        this.password = "123";
    }

    Person.prototype.getInfo = function()//被多个对象共享
    {
        alert(this.username + "," + this.password);
    }

    var p1 = new Person();
    var p2 = new Person();
    p1.username.push("zhangsan");
    p2.username.push("lisi");
    p1.getInfo();
    p2.getInfo();


6、动态原型方式

    function Person(){
        this.username = "zhangsan";
        this.password = "123";
        //通过标志量让所有的对象共享方法
        if(typeof Person.flag == "undefined"){
            alert("prototype");
            Person.prototype.getInfo = function() {
                alert(this.username + ", " + this.password);
            }
            Person.flag = true;
        }
    }

    var p = new Person();
    var p2 = new Person();
    p.getInfo();
    p2.getInfo();
育知同创教育
2018-06-27 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
JavaScript中对象的创建有以下几种方式:
(1)使用内置对象
(2)使用JSON符号

(3)自定义对象构造

具体怎么创建可以网上搜索。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梁洋洋001
2015-08-27 · TA获得超过298个赞
知道小有建树答主
回答量:322
采纳率:53%
帮助的人:175万
展开全部
在 HTML 文档中 <input type="file"> 标签每出现一次,一个 FileUpload 对象就会被创建。所以你用js创建此标签即可创建
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梁天赐呵呵
2018-07-24
知道答主
回答量:8
采纳率:0%
帮助的人:5.4万
展开全部
//创建对象 
//第一个参数 需要写入的数据(数组)
//第二个参数 文件名(好像部分浏览器设置文件名无效)
//第三个参数 其他配置项
var file = new File(["123","456"], "123.txt", { type: "text/plain;charset=utf-8" });
//保存文件
saveAs(file);
//低版本浏览器不一定支持,建议使用最新版chrome测试.

//请参考https://developer.mozilla.org/zh-CN/docs/Web/API/File
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式