这是根据jq源码数组去重方法改造而成:
Array.prototype.unique = function(){
var elem, i=1, dup=[], j=0;
this.sort();
for( ; (elem=this[i]); i++){
if(elem===this[i-1]) j=dup.push
var fn=function(){},ar=[],ob={},str='',
nmb=0,ud=undefined,nl=null,
bl=false,dt=new Date();
console.log(Object.prototype.toString.call(fn));//[object Function]
console.log(Object.prototype.toStr
1、switch语句使用全等比较。
var val = '123';
switch(val){
case 123:
//此处代码不会执行;
break;
case '123':
//执行;
break;
}
2、数组的
var m=[1,2,3,4,5,6,7]
n = m.sort(function(a,b){return Math.random()>.5?1:-1;});
//n就是打乱之后的一个数组。
实例一、创建具有唯一Id的Dom元素
+function(){
function getUniqueEleId(){
var uid='uid'+parseInt(Math.random()*10000);
if(document.getElementById(uid)){
//遇到相同ID的元素就重新执
用javascript写了一个简单的进度条
var progressBar = function (div){
function resetStyle(ele){
var style = ele.style;
style.width = '0px';
style.height = '50%';
style.border = '0px
要弄明白this,首先得了解一个概念:执行上下文
执行上下文是一个抽象出来的概念,它是指当控制器转到可执行代码的时候,即会进入到一个执行上下文。
曾经遇到一个题,如下:
var name = "the window";
var obj
先来看javascript中定义函数的几种方式:
1、 函数关键字定义方式:
function funcName(){}
2、 函数字面量定义方式:
var func = function(){};
Javascript学习路线图:
作用域链(with语句) -> 闭包 -> 匿名函数 -> this关键字 -> 原型链 -> 面向对象 -> 模式 -> AMD/CMD -> 解释器原理
学习资源:
刚开始接触闭包这个概念的时候,很难理解,于是闭包这个问题就一直萦绕在我脑海里。
每当看书或者其它资料时,闭包这个词出现的时候,我就会特别地关注一下,看看不同的人对闭包是如何解释的。
现在我就简单地谈一
function EnterPress(){
if(event.keycode == 13){
...
}
}
IE6的onkeypress会接受"回车事件",而onkeydown不会接受
IE8的onkeypress不会接受"回车事件",而onkeydow
1、事件流的区别
IE采用冒泡型事件,Netscape采用捕获型事件,而Dom采用先捕获后冒泡型事件
例如:
<body>
<div>
<button>按钮</button>
</div>
</body>
冒泡型事件
Javascript将数据分为两大类型:原生类型和对象类型。
原生类型包括number, string, boolean, undefined, null五种,除此之外都是对象类型,比如Object, Function, Array。
Javascript中所有的对象类型都具
function Test(a){
var b=arguments[0]?arguments[0]:50
return a+":"+b
}