javascript new 需不需要继续使用

你也没有必要使用new Array(),使用[];
不要使用 new Number, new String, or new Boolean. 等等
不要使用new Function 来创建函数
比如你要写


代码如下:

frames[0].onfocus = new Function("document.bgColor='antiquewhite'")

你应该这样写


代码如下:

frames[0].onfocus = function () {document.bgColor = 'antiquewhite';};,

第二种写法可以使得编译器尽早的看到函数体。使得错误尽快的检查出来。
当你写
Js代码


代码如下:

myObj = new function () {
this.type = 'core';
};

的时候,这样写
Js代码


代码如下:

myObj = {
type: 'core'
};

(0)

相关推荐

  • JavaScript:new 一个函数和直接调用函数的区别分析

    复制代码 代码如下: function Test() { this.name = 'Test'; return function() { return true; } } var test = new Test(); // 这里的 test 是什么? 是一个 Test 对象吗?错!这里 test 是一个函数--Test 中返回的 function() { return true; }.这时,new Test() 等效于 Test(),注意,是等效于,不是等于,如果使用new Test() ==

  • javascript中的new使用

    所以javascript中没有类的概念.理解这一点很重要,很多javascript教程为了让读者更容易理解,会套用他们常用的类模式中的概念,这 样反而让大家产生歧义. 先进段代码, 复制代码 代码如下: function employee(){ this.name=""; this.dept=""; } employee.prototype={ say:'hello' } var p = new employee(); 这段代码,我们会经常用到,其中new关键字最容

  • javascript中使用new与不使用实例化对象的区别

    我们先来看个实例 function Me(name,age,job){ this.name = name; this.age = age; this.job = job; } 请问这以下两种实例化对象方式有什么区别呢? var mefun1 = new Me('fei','20','it'); var mefun2 = Me('fei','20','it'); 简单的说 第一种是构造函数式,即通过new运算符调用构造函数Function来创建函数 第二种不是实例化,只是调用函数把返回值赋给变量.

  • JavaScript中的new的使用方法与注意事项

    原文: JavaScript, We Hardly new Ya  --Douglas Crockford.    http://yuiblog.com/blog/2006/11/13/javascript-we-hardly-new-ya/ 引用 JavaScript是一门基于原型的语言,但它却拥有一个 new 操作符使得其看起来象一门经典的面对对象语言.那样也迷惑了程序员们,导致一些有问题的编程模式. 其实你永远不需要在JavaScript使用 new Object().用字面量的形式{}去

  • JavaScript中使用构造器创建对象无需new的情况说明

    如下 复制代码 代码如下: function Person(name, age) { this.name = name; this.age = age; } var p = new Person('lily', 20); 发现某些库代码中创建正则对象的方式无需new,这让人感到奇怪.如下 复制代码 代码如下: var reg = RegExp('^he$'); 测试发现使用或不使用new,最后返回的都是正则对象,且typeof它们都是"object". 复制代码 代码如下: var r

  • javascript使用eval或者new Function进行语法检查

    使用new Function( ) 来进行语法检查 eval( ) 方法是不能乱用的,在不适当的时候使用eval( ) 方法可能导致整个程序都会出问题的: 而new Function( ) 就没这么大问题.虽然new Function( ) 在任何情况下,构造的函数都是在全局作用域下直接工作的,但只作语法检查的话,并不会因为作用域问题而产生意外结果,只要你不直接调用通过它构造的新函数. 在eval( ) 接受的参数前面增加"0," 其实这是由于IE中存在一个bug.出于某种原因,如果你

  • JavaScript不使用prototype和new实现继承机制

    此方法并非笔者原创,笔者只是在前辈的基础上,加以总结,得出一种简洁实用的JavaScript继承方法. 传统的JavaScript继承基于prototype原型链,并且需要使用大量的new操作,代码不够简洁,可读性也不是很强,貌似还容易受到原型链污染. 笔者总结的继承方式,简洁明了,虽然不是最好的方式,但希望能给读者带来启发. 好了,废话不多说,直接看代码,注释详尽,一看就懂~~~ 复制代码 代码如下: /**   * Created by 杨元 on 14-11-11.   * 不使用prot

  • JavaScript中判断函数是new还是()调用的区别说明

    方式1 复制代码 代码如下: function Person(n,a){ this.name = n; this.age = a; if(this instanceof Person){ alert('new调用'); }else{ alert('函数调用'); } } var p = new Person('jack',30); // --> new调用 Person(); // --> 函数调用 方式2 复制代码 代码如下: function Person(n,a){ this.name

  • javascript new 需不需要继续使用

    你也没有必要使用new Array(),使用[]: 不要使用 new Number, new String, or new Boolean. 等等 不要使用new Function 来创建函数 比如你要写 复制代码 代码如下: frames[0].onfocus = new Function("document.bgColor='antiquewhite'") 你应该这样写 复制代码 代码如下: frames[0].onfocus = function () {document.bgC

  • JavaScript中的无阻塞加载性能优化方案

    Javascript在浏览器中的性能,可以说是前端开发者所要面对的最重要的可用性问题. 在Yahoo的Yslow23条规则当中,其中一条是将JS放在底部 .原因是,事实上,大多数浏览器使用单进程处理UI和更新Javascript运行等多个任务,而同一时间只能有一个任务被执行.Javascript运行了多长时间,那么在浏览器空闲下来响应用户交互之前的等待时间就有多长. 从基本层面说,这意味着<script>标签的出现使整个页面因脚本解析.运行而出现等待.不论实际的 JavaScript 代码是内

  • 传智播客学习之JavaScript基础篇

    一.JavaScript与java的区别 1.JavaScript是Netscape公司的产品,Java是Sun公司的产品. 2.JavaScript是基于对象,Java是面向对象. 3.JavaScript只需解释就可以执行,Java需要先编译成字节码文件,再执行. 4.JavaScript是弱类型,Java是强类型. 小结:其实java与JavaScript除了名字上有些像以外,然后JavaScript借用了部分java思想外,其余别的几乎没有什么关系. 二.如何将JavaScript与Ht

  • 详解Javascript中new()到底做了些什么?

    前言 和其他高级语言一样 javascript 中也有 new 运算符,我们知道 new 运算符是用来实例化一个类,从而在内存中分配一个实例对象. 但在 javascript 中,万物皆对象,为什么还要通过 new 来产生对象? 本文将带你一起来探索 javascript 中 new 的奥秘... 要创建 Person 的新实例,必须使用 new 操作符. 以这种方式调用构造函数实际上会经历以下 4个步骤: (1) 创建一个新对象: (2) 将构造函数的作用域赋给新对象(因此 this 就指向了

  • 4个顶级JavaScript高级文本编辑器

    JavaScript无处不在,它在网络上的无处不在是不可否认的.每个应用程序都以一种或另一种形式使用它.任何对网络持认真态度的开发人员都应该学习JavaScript.如果您已经知道了,一定要继续学习新的框架.库和工具,因为JavaScript是一种活生生的.不断发展的语言. JavaScript社区有一个很好的开源环境,这导致了一些优秀的开源JavaScriptIDE(集成开发环境).开源运动非常强大,您可以使用许多IDE来编写JavaScript程序. 就像任何其他编程语言一样,JavaScr

  • jQuery功能函数详解

    在javascript编程中,开发者通常需要编写很多小程序来实现一些特定的功能.例如浏览器检测,字符串处理.数组的编辑等.jQuery对这些常用的程序进行了总结,提供了很多实用的函数. 1.检测浏览器. jQuery通过$.browser对象获取浏览器信息. 属性 说明 msie 如果是ie为true,否则为false mozilla 如果是mozilla相关的浏览器为true,否则为false safari 如果是Safari浏览器为true,否则为false poera 如果是opera浏览

  • JavaScript 轻松搞定快捷留言功能 只需一行代码

    别急,方法非常简单,还是先听我说说它的来历吧... 最开始,快捷留言这个功能要追溯到发表[AjaxControlToolkitTests自动测试框架完全解析之一:架构篇]这篇文章的时候,当时它纯粹是那篇文章的副产品,本来没太在意,本想只是给像我一样的懒人准备的一条捷径而已,后来因为没有提示这个功能会直接自动提交留言,还引起了几枚同学的不满意,于是后来又在醒目位置加上了提示:[提示:快捷链接会直接推荐并提交留言信息.],才平息了局势: 再后来,有部分同学可能是鼠标太高级,连击速度特别快的原因,每次

  • javascript 极速 隐藏/显示万行表格列只需 60毫秒

    隐藏表格列,最常见的是如下方式: 复制代码 代码如下: td.style.display = "none"; 这种方式的效率极低.例如,隐藏一个千行表格的某列,在我的笔记本(P4 M 1.4G,768M内存)上执行需要约 4000毫秒的时间,令人无法忍受.例如如下代码: 复制代码 代码如下: <body> <input type=button onclick=hideCol(1) value='隐藏第 2 列'> <input type=button on

  • 只需五句话搞定JavaScript作用域(经典)

    JavaScript的作用域一直以来是前端开发中比较难以理解的知识点,对于JavaScript的作用域主要记住几句话,走遍天下都不怕... 一."JavaScript中无块级作用域" 在Java或C#中存在块级作用域,即:大括号也是一个作用域. public static void main () { if(1==1){ String name = "seven"; } System.out.println(name); }// 报错 public static v

  • jQuery实现动态加载(按需加载)javascript文件的方法分析

    本文实例讲述了jQuery实现动态加载(按需加载)javascript文件的方法.分享给大家供大家参考,具体如下: 为了提高网页程序的性能,在很多情况下javascript 是按需加载,而不是全部写在 <head>里面.利用jQuery可以很方便的实现按需加载js. $("#load").click(function(){ $.getScript('helloworld.js', function() { $("#content").html('js 加

随机推荐