最后更新日:2014年11月17日
本章介绍了些javascript的小注意点。另外,在平时我们用的最多的就是数组和对象。
闭包小概念
function x(){
console.log(1);
return x;
};
function a(){
var y = x();
console.log(y);
y();
};
//执行a方法将输出两个1
<html>
<head>
<script>
function test(a){
return a + '01';
};
function b(){
var ret = test(0011);//八进制9
//var ret = test('0011');//表示字符串0011
document.getElementById("a").innerHTML=ret;
//结果并非是0.3,其它语言也有这种情况
console.log(0.1+0.2);//System.out.println(0.1+0.2);
console.log(+1);
console.log([]);//Array[]
console.log(+[]);//0
console.log([]+1);//1
console.log(++[[]][0]);//1
console.log([0]);//Array[0]
console.log([0][0]);//0
console.log(+[0]);//0
};
</script>
</head>
<body onload="b()">
<div id="a"></div>
<body>
</html>
<html>
<head>
<script src="test.js"></script>
</head>
<body>
</body>
</html>
//example 1
//可简单的理解为b是对function的引用,加上()即让函数执行
var
a,
b = function(){
console.log(1);
};
b();
a = b;
console.log(a);
//example 2
//自调用匿名函数
//funtion(){}();//错误
(function(){})();//正确
(function(){}());//正确
//注:现jQuery版本1.11.1及2.1.1使用的就是上面的方式
/**
(function( global, factory ) {}(
typeof window !== "undefined" ? window : this,
function( window, noGlobal ) {}
)
);
*/
!function(){}();//正确
//example 3
//将自调用匿名函数添加到window对象上
(function(){
var x=10,
y=20,
z;
z = x + y;
console.log(z);
})(window);
!function(){
console.log(window);
/**
①
undefined = "I am undefined";
console.log(undefined);//各浏览器各版本可能显示不一样,谷歌37显示为undefined
*/
/**
②
var undefined = "I am undefined";
console.log(undefined);//I am undefined
*/
//当①和②同时出现时,则两个值一样(是'I am undefined')
undefined = "I am undefined";
console.log(undefined);
var undefined = "I am undefined";
console.log(undefined);
}();
<html>
<head>
<script src="test.js"></script>
</head>
<body onload="test()">
</body>
</html>
function a(){
console.log(1);
};
//通过new创建对象
var x = new a();//调用了a方法
var y = new Object();
y.x = "2";
console.log(y.x);
var z1 = Object.create([1,2,3]);
console.log(z1);
var z2 = Object.create({key1:"value1",key2:"value2"});
console.log(z2);
//原型继承创建一个对象
var a = {x:1,y:2};
function newIt(){};
newIt.prototype = a;
var b = new newIt();
b.x = 10;
b.z = 3;
console.log(b);//Object {x: 10, y: 2, z: 3}
//JavaScript权威指南中讲到:
function inherit(a){
if(a==null) {console.log('It is null');throw TypeError();}
if(Object.create) {console.log('It is Object.create');return Object.create(a);}
var checkType = typeof a;
if(checkType!=="object"&&checkType!=="function"){console.log('type error'); throw TypeError();}
function emptyConstruct(){};
emptyConstruct.prototype = a;
return new emptyConstruct();
};
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<a id='a' class='a' href='1.png' title='this is a picture' onclick='test();return false;'>Test Picture</a>
<img id='x' src='blank.png' alt='hello world'/>
<div id='d'></div>
<a id='b' href='a.html' accesskey='y'>click me</a><!-- Alt+Y -->
<script>
function test(){
//var x = document.getElementsByClassName('a');
var x = document.getElementsByTagName('a');
var y = x[0].getAttribute('href');
var z = document.getElementById('x');
//getElementById得到的是对象,不是数组,因此不是z[0]
z.setAttribute('src',y);//z.src = y;
};
</script>
<script>
var x = document.getElementsByTagName('body');
var y = x[0].childNodes;//显示所有子节点
y = x[0].firstChild;//显示第一个节点
y = x[0].lastChild;//显示最后一个节点
/*
var y = x[0].nodeType;
for(var i in y){
//nodeType{1:元素节点;2:属性节点;3:文本节点}
console.log(y[i].nodeType);
}
*/
var z = document.getElementsByTagName('a');
console.log(z[0].childNodes[0].nodeValue);//Test Picture
//window.open('test.html','hello','width=300,height=300');
</script>
<script>
document.write("<p id='p'>this is p</p>");
document.getElementById('p').innerHTML = 'this is another p';
var newP = document.createElement('p');
var newDivText = document.createTextNode('this is div');
var newDiv = document.getElementById('d');
newP.appendChild(newDivText);
newDiv.appendChild(newP);
//newElement:新元素;parentElement:父元素;targetElement:目标元素
//parentElement.insertBefore(newElement,targetElement)
</script>
<script>
function t(){
document.getElementById('b').style.background = "#"+("00000"+((Math.random()*16777215+0.5)>>0).toString(16)).slice(-6);
};
//setTimeout("t()",1000);
setInterval("t()",1000);
</script>
</body>
</html>
<!--
<p class="a" id="b"><h1>hello</h1></p>
<p>world</p>
p.a{
//TODO
}
#b h1{
//TODO
}
-->
其它请参考附件
分享到:
相关推荐
这里,我们有针对这两个主题的学习笔记和参考资料,包括JavaScript培训、jQuery API、JavaScript基础、函数详解以及jQuery使用手册等内容。让我们逐一探讨这些知识点。 首先,`JavaScript培训.zip`可能包含的是对...
javascript和jquery的学习笔记,自己做的大家可以下载浏览,很不错
Jquery学习笔记是指使用Jquery框架来实现javascript编程的笔记记录,本笔记记录了Jquery-1.2的基本用法、Ajax异步交互、XMLHttpRequest对象的基本应用等知识点。 一、Jquery基本用法 Jquery是一个javascript框架,...
总的来说,JavaScript 和 jQuery 的学习涵盖了变量、数据类型、控制结构、DOM 操作和事件处理等多个方面,是 web 开发的基础。理解并熟练掌握这些知识点,能够帮助开发者构建功能丰富、交互性强的网页应用。
**jQuery学习笔记(一)** 在深入探讨jQuery之前,我们首先要理解什么是jQuery。jQuery是一个高效、易用且功能丰富的JavaScript库,它简化了HTML文档遍历、事件处理、动画制作和Ajax交互等任务。由John Resig在2006...
《韩顺平jQuery学习笔记及练习》是一份珍贵的学习资源,由知名讲师韩顺平的课程实录整理而成,旨在帮助学习者深入理解和掌握jQuery这一强大的JavaScript库。jQuery简化了HTML文档遍历、事件处理、动画设计和Ajax交互...
**jQuery 学习笔记总结** jQuery 是一个广泛使用的 JavaScript 库,它简化了网页文档对象模型(DOM)操作、事件处理、动画制作以及Ajax交互。本篇笔记将深入探讨 jQuery 的核心概念,包括选择器、常用方法以及在...
**jQuery学习笔记** jQuery,作为一个轻量级的JavaScript库,极大地简化了JavaScript的DOM操作、事件处理、动画设计以及Ajax交互。这篇学习笔记将深入探讨jQuery的核心概念和实用技巧,帮助初学者快速上手。 ## 一...
以下是对JQuery学习笔记的详细解析: 首先,JQuery的出现是为了弥补JavaScript在处理浏览器兼容性和控件操作上的不足。不同浏览器对JavaScript的实现存在差异,导致开发跨浏览器的网页应用变得复杂。为了统一这些...
《jQuery学习笔记详解》 jQuery,作为一款广泛应用于前端开发的JavaScript库,因其简洁的语法和强大的功能,深受开发者喜爱。这份"jQuery学习笔记.rar"包含的资源旨在帮助你全面掌握jQuery,无论你是初学者还是有...
这份"js&jquery学习笔记"应该包含对这些概念的详细解释,以及示例代码和练习,帮助读者理解和掌握这两种技术。对于初学者来说,这是一份宝贵的资源,能够快速上手JavaScript和jQuery,提升Web开发技能。
**jQuery学习笔记合集概述** jQuery是一个广泛应用于前端开发的JavaScript库,它简化了HTML文档遍历、事件处理、动画制作以及Ajax交互等任务。这个"JQuery学习笔记合集"包含了三个部分,旨在帮助开发者从初级到高级...
### Ajax和jQuery学习笔记 #### 一、Ajax基础与原理 **1.1 什么是Ajax?** Ajax(Asynchronous JavaScript and XML,异步JavaScript和XML)是一种用来创建快速动态网页的技术,通过在后台与服务器进行少量数据...
**jQuery学习笔记 jQuery API** jQuery,作为一款广泛使用的JavaScript库,极大地简化了DOM操作、事件处理、动画制作和Ajax交互。本笔记旨在帮助开发者快速上手并深入理解jQuery的核心概念和API。 ### 1. jQuery...
### JQuery学习笔记(技术文档) #### 一、JQuery能做什么? JQuery 是一款轻量级的 JavaScript 库,它的设计宗旨是“write less, do more”,即“写得更少,做得更多”。通过JQuery,可以实现以下功能: 1. **...
《锋利的jQuery学习笔记》是一份深入探讨jQuery框架的学习资料,主要针对想要掌握JavaScript库jQuery的开发者。jQuery是一款高效、简洁的JavaScript库,它极大地简化了JavaScript代码的编写,使得DOM操作、事件处理...
**jQuery学习笔记分享** 在Web开发中,jQuery是一个非常重要的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互等任务。本文将深入探讨jQuery的基本概念、核心功能以及常见用法。 ### 第1章:...
《圣思源jQuery学习笔记详解》 jQuery,作为一款强大的JavaScript库,自2006年发布以来,因其简洁易用的API和丰富的插件生态,迅速成为了前端开发者的重要工具。圣思源张龙老师的jQuery学习笔记,深入浅出地剖析了...