Javascript 怎么创建File对象

发布网友 发布时间:2022-04-22 04:08

我来回答

4个回答

热心网友 时间:2022-04-07 06:29

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();

热心网友 时间:2022-04-07 07:47

JavaScript中对象的创建有以下几种方式:
(1)使用内置对象
(2)使用JSON符号

(3)自定义对象构造

具体怎么创建可以网上搜索。

热心网友 时间:2022-04-07 09:22

在 HTML 文档中 <input type="file"> 标签每出现一次,一个 FileUpload 对象就会被创建。所以你用js创建此标签即可创建

热心网友 时间:2022-04-07 11:13

//创建对象 
//第一个参数 需要写入的数据(数组)
//第二个参数 文件名(好像部分浏览器设置文件名无效)
//第三个参数 其他配置项
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

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com