易截截图软件、单文件、免安装、纯绿色、仅160KB

参加JavaScript面试,必须搞懂的问题

参加JavaScript面试,必须搞懂的问题(推荐)
一. JavaScript中的对象.
JavaScript中的Object是一组数据的key-value的集合, 有点类似于Java中的HashMap, 所有这些数据都是Object里的property.
通常情况下, JavaScript中建立一个对象用"new"加上constructor function来实现.
如new Date(), new Object()等.
var book = new Object();
book.name = "JavaScript is Cool";
book.author = "tom";
book.pages = 514;
上面例子中的name和page就是名为book的对象中的property.
我们可以用delete来删除Object中的property: "delete book.name;".
除了Object, Date等buildin的对象外, 我们可以写自己的constructor function, 然后使用new就可以建立自己的对象. 如上面的book可以写成:
function Book (name, author, page) {
this.name = name;
this.author = author;
this.page = page;
}
var abook = new Book("JavaScript is Cool", "tom", 514);
二. function的用法
在JavaScript中, function是一种数据类型, 所有的function都是从buildin的Function object 衍生的对象.
所以在JavaScript 中function可以作为参数传递, 可以作为Object的property, 也可以当作函数返回值.
function在JavaScript中有两种用法,
一种是当作constructor, 前面加上new keyword用来建立对象. 一种是当作method, 为其他对象调用.
注意function和method在中文里的意思相当, 在有些语言里也可以通用.
但是在JavaScript中, 它们还是有所区别的.
function本身是一个对象, 而当作为一个方法他属于一个对象时, 就成为了一个这个对象的method, 相当于一个对象种的属性.
也就是说method是相对于一个对象而言的, function在某些情况下成为了一个对象的method.
function Book(name, author, page) {
this.name = name;
this.author = author;
this.page = page;
this.getReader = Book_getReader;
}
function Book_getReader() {
//....
}
上面的例子中, function Book_getReader()就成为了Book的一个名为getReader的method.
call()和apply()是Function object 的两个方法,
它们也可以使一个function作为另一个对象的method来调用用.
call()和apply()都需要参数, 而第一个参数就是调用对象, 也就是当function内部出现this时, this所指的对象. call()和apply()的区别在于call()可以传递任意长度参数, 只要第一个


相关文档:

JavaScript 生成 table

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>test</title>
<mce:style type="text/css"><!--
.table_back{width:480px;height:480px;border-bottom:1px solid bla ......

javascript this详解(转)

在面向对象编程语言中,对于this关键字我们是非常熟悉的。比如C++、C#和Java等都提供了这个关 键字,虽然在开始学习的时候觉得比较难,但只要理解了,用起来是非常方便和意义确定的。JavaScript也提供了这个this关键字,不过用起来就比 经典OO语言中要"混乱"的多了。
    下面就来看看,在JavaScript中各种 ......

javascript parseInt is broken

javascript parseInt is broken
I was debugging some strange errors in a date conversion function I was writing, and I stumbled upon something that amazed me... a strange bug in parseInt
>>>parseInt('06')
6
>>>parseInt('07')
7
>>>parseInt('08')
0
>>>parseInt ......

JavaScript实现网页的放大缩小以及拖动功能

项目中遇到一种情况,开发的页面绘制出来的图片或者底图都比较大,超过屏幕大小许多。为了改善使用体验,需要给这类页面添加放大、缩小以及平移的功能。经过一番搜索和尝试,实现了有关功能,备忘如下。
JavaScript:
var zoomRate = 20;//每次放缩比例增量
var maxRate = 300;//最大放大倍数
var minRate = 20;//最小 ......

Javascript 数字逗号分隔

今天看到一段神得一塌糊涂的Javascript代码
(13223342.9269).toFixed(2)=13223342.93;
(13223342.9269).toLocaleString()=13,223,342.93;
formatNum(13223342.9269)=13,223,342.9269;
delFormat(13,223,342.9269)=13223342.9269;
//去掉逗号
function delFormat(str){
  return str.replace(/,/g,"");
&n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号