`

使用对象字面量语法构造函数两种方法区别

js 
阅读更多
使用对象字面量语法构造函数两种方法区别

function myConstructor(){
  //私有和特权成员
}
或者,
var myConstructor = function(){
  //私有和特权成员
}

浏览器中的解释程序在执行javascript代码之前,首先要对代码进行变量初始化,即初始化window对象之下的所有顶级变量。

由于第2种定义函数的语法是通过赋值语句实现的,所以在初始化过程中不会被立即声明。

只有在解释器开始执行代码并执行到相应的赋值语句时,该函数才会被声明。因此调用该函数的语句只能出现在定义该函数之后。并且,如果使用第2种方法来定义构造函数,那么为其prototype属性中添加公共成员的代码。也应该放在该函数定义之后。

比如function example(){…}时,example()函数会在脚本之前立即被声明。这意味着你可以在脚本中任何地方调用example(),即使对函数的调用发生在函数的定义之前也没有问题。而对于第2种替代语法来说,如var example2 = function(){…},在脚本执行到赋值语句之前example2()函数是不存在的。如果你在该定义发生之前调用example2(),结果会失败。
分享到:
评论

相关推荐

    JavaScript对象字面量和构造函数原理与用法详解

    JavaScript是一种动态类型的面向对象编程语言,它提供了多种创建对象的方式,其中对象字面量和构造函数是最常见的两种。本文将深入讲解这两种创建对象的方法及其原理。 **对象字面量** 对象字面量是JavaScript中...

    Javascript对象字面量的理解_.docx

    对象字面量支持两种方式来访问属性: - **点符号**(`.`): ```javascript var box = { name: 'abc', age: 28 }; console.log(box.name); // 输出 "abc" ``` - **方括号**(`[]`): ```javascript var box...

    js,数组,对象,构造函数,json字符串

    - 字面量语法:`let obj = {key: value};` - `Object`构造函数:`let obj = new Object();` - 自定义构造函数:`function MyObject() {...}`,然后使用`new MyObject()`创建实例。 4. **JSON转换**: - JSON...

    Javascript函数与对象

    创建对象有两种主要方式:构造函数和对象字面量。 **构造函数** ```javascript const person = new Object(); person.name = "张三"; ``` **对象字面量** ```javascript const person = { name: "张三", age: 25...

    javascript

    在JavaScript中,创建对象通常有两种主要方式:对象字面量和构造函数。在标题和描述中提到的封装,是面向对象编程中的一个重要概念,它涉及到将数据和操作这些数据的方法组合在一起,形成一个独立的对象。 1. **...

    Javascript的匿名函数讲解

    接下来,我们要讨论函数字面量和Function()构造函数的区别。函数字面量允许我们为其指定任意名称,并且可以创建递归函数;而Function()构造函数则不能实现这一点。此外,Function()构造函数允许在运行时动态创建和...

    javascript 构造函数方式定义对象

    除了构造函数,还可以使用字面量语法(也称为对象字面量)来直接创建对象: ```javascript let obj = { name: 'zhangsan', age: 10, sex: 'male' }; ``` ### 5. 数组排序 在JavaScript中,数组有一个 `sort()`...

    JS面向对象.pdf

    2. 创建对象的两种方法:可以使用对象字面量(使用花括号{})创建对象,或者使用构造函数(使用new关键字)创建新对象实例。 3. 对象属性的访问与赋值: - 使用点符号访问对象属性,例如:`person.name` - 使用方...

    Javascript 使用function定义构造函数

    除了使用构造函数之外,JavaScript还允许我们直接使用对象字面量的方式创建对象。这种方式不需要使用`new`运算符,代码如下: ```javascript var object = {}; object.property = value; object.func = function(){...

    js代码-JS对象构造函数

    在JavaScript中,有两种主要方式来创建对象:字面量语法和构造函数。 #### 1.1 字面量语法 ```javascript let person = { name: 'John Doe', age: 30, sayHello: function() { console.log('Hello!'); } }; `...

    js中对象和面向对象与Json介绍

    创建JavaScript对象有两种主要的方法:通过对象字面量和通过构造函数。 对象字面量是定义和初始化对象的简洁方式。字面量直接列出对象的属性和方法。例如: ```javascript var person = { firstname: "Bill", ...

    javascript new 需不需要继续使用.docx

    与对象类似,创建数组也有两种常见的方法:数组字面量 `[]` 和 `new Array()`。虽然两者都能创建数组,但在实际开发中,数组字面量更受欢迎。原因包括: - **简洁性**:数组字面量 `[1, 2, 3]` 更加简洁。 - **性能...

    北大青鸟ACCP5.0之javascript部分ppt

    对象的创建主要有两种方式:字面量语法和构造函数。例如: ```javascript // 字面量语法创建对象 var person = { name: "张三", age: 30, job: "工程师" }; // 构造函数创建对象 function Person(name, age, job...

    浅谈JavaScript对象与继承_.docx

    这意味着,JavaScript的对象并不是由预定义的模板或类创建的,而是通过字面量语法或者构造函数来创建。对象本质上是键值对的集合,可以理解为类似Python的字典。在上面的例子中,`me`就是一个包含属性`firstName`、`...

    Javascript中的对象.pdf

    在JavaScript面向对象的程序设计中,使用new运算符从构造函数生成实例对象时,每个实例都会有自己的属性和方法副本,这虽然实现了封装,但也导致了内存的浪费,因为无法共享属性和方法。通过引入prototype属性,可以...

    Javascript学习笔记之数组的构造函数

    1. **字面量语法与构造函数的区别**: - 字面量语法:`[元素1, 元素2, ...]`,如`[1, 2, 3]`,直接创建一个包含指定元素的数组。 - 构造函数:`new Array(元素1, 元素2, ...)`,如`new Array(1, 2, 3)`,同样创建...

    js面向对象设计用{}好还是function(){}好(构造函数)

    在JavaScript中实现面向对象设计,有多种方法可以创建对象,比如使用字面量方式({})和构造函数(function(){})。了解这两种方法的优缺点有助于在不同的编程场景下做出合适的选择。 使用字面量方式创建对象,在...

    javascript 静态对象和构造函数的使用和公私问题

    首先,静态对象(如`objJson`)是通过字面量语法创建的,它可以直接访问其内部属性和方法。例如: ```javascript var objJson = { op1: 'objJson option1', fn1: function() { alert(this.op1); } }; ``` 在...

    js代码-获取对象字面量:获取环境变量时必用此方法,

    对象字面量是一种在JavaScript中快速创建对象的方法,它的语法结构如下: ```javascript var myObject = { property1: value1, property2: value2, // ... }; ``` 这里,`myObject` 是我们创建的对象,`...

Global site tag (gtag.js) - Google Analytics