`
zhouxianglh
  • 浏览: 269909 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JavaScript 随手小记

阅读更多

前些时间看了<JavaScript 权威指南>,信手翻了一下,算是笔记吧

function funLoad() {
	var str = "69 66 20 79 6F 75 20 63 61 6E 20 72 65 61 64 20 74 65 69 73 20 77 65 20 77 61 6E 74 20 79 6F 75";
	str = str.replace(/ /g, "");
	var result = ""
	for (var i = (str.substr(0, 2) == "0x") ? 2 : 0; i < str.length; i += 2) {
		result+=(String.fromCharCode(parseInt(str.substr(i, 2), 16)));
	}
	alert(result);
}
//cook 的读写
function usrCookie(){
	var useDate = new Date();
	useDate.setMonth(useDate.getMonth() + 1);
	document.cookie = "testCookie="+ escape("火星人哎")+";expires="+useDate.toGMTString()+";path=/";//espires 过期时间,domain 用于同源策略
	document.cookie = "testCookie1="+ escape("你好 very good!")+";expires="+useDate.toGMTString();//escape 用于字符编码
	alert(unescape(document.cookie));//unescape 用于反escape编码
}
//replace 
function usrReplace(){
	var quote = /"([^*]*)"/g;
	alert("go\" you \"od".replace(quote,"\@$1\@"));//这里$1 用来表示第一个()区配
}
//数组的使用
function usrArray(){
	var temp = null;//javaScript 中没有块定义,定义在这里和for 中无区别
	var array = [1,2,"hello"];
	array.length = 10;//对象没有length 属性,这是数组和对象的区别
	alert("array lenght "+ array.length);//定义数组长度
	array[20]="world";//20以前空置
	alert("array lenght "+ array.length);//这说明根据下标访问不一定可靠
	array["good"]="good";//这里good 是做为属性使用的
	for(temp in array){
		alert(array[temp]);
	}
	array.length = 2;//这里截断了数组(因为good 是属性,因此仍存在)
	for(temp in array){
		alert("second "+array[temp]);
	}
}
//constructor  对象的构造方法
function usrObjType(){
	var obj = new Date();
	if(typeof obj == "object" && obj.constructor == Date){//typeof 和 constructor 的使用
		alert("this Date Object!");
	}
}
//对象方法
function userObjFun(){
	function Obj(){};
	Obj.prototype.goString =function(){alert("goString!")};//属性方法定义
	Obj.disString=function(){alert("disString");}//类方法定义
	Obj.disString();//类方法使用
	new Obj().goString();//属性方法使用
}
//"继承"属性
function userObj(){
	var Alert1 = function(){alert("zx");}
	var Obj = function(){}
	Obj.prototype.tempVal = Alert1;//函数才有 prototype 属性,这里操作的是Obj 类
	var newObj = new Obj(); 
	Alert1.display=function(){alert("display")}
	Obj.name ="good";//这里操作的是 Obj,区别 prototype
	newObj.tempVal.display();//protptype 定义了原生类,这里是引用,不是副本
	alert(Obj.name);
}
//使用属性
function userObjAttr(){
	var obj = new Object();
	obj.name = "good";
	obj.sex = "男";
	for(var temp in obj){
		alert("ojb."+temp + " : " + obj[temp]);//for 读取属性值
		if(temp == "sex"){
			delete obj[temp];//delete 删除属性(delete obj.sex;)
		}
	}
	for(var temp in obj){
		alert("Second ojb."+temp + " : " + obj[temp]);//for 读取属性值
	}
}
//arguments的使用
function useArgu(x,y,z){//可以传递任意数量的参数
	alert("argument[1]:"+arguments[1]);//arguments 类似数组,存放传入参数 
	if(arguments.length > 2){
		arguments.callee(arguments[0],arguments[1]);//callee 用来引用当前函数
	}
}
//函数直接量的使用
function useFun(){
	var f = function funX(count){
		alert("userFun.f.funX="+count)
		if(count > 0){
			funX(--count);//注意这里可以正常回调
		}
	}
	f(2);
	alert("over---------");
	try{
		funX(2);//这里出错,原因是 函数直接量 是匿名函数,funX 只是为了方便方法体回调
	}catch(e){
		alert("error:" + e)
	}
}

//with 的使用(不建议使用)
function useWith(){
	with(document.getElementById("aTag")){
		alert(name);
		alert(href);
	}
}
// try 捕捉异常
function useTry() {
	try {
		createError();
	} finally {
		throw new Error("useTye run finally Error throw!");// 在这里finaly 中的Error
		// 代替了 之前的Error
	}
	/*
	 * finally 中return try { createError(); } finally { return
	 * false;//当前return否定了Error返回false }
	 */
	/*
	 * 使用过程 try{ createError(); }catch(e){ alert(e); }finally{ alert("useTye run
	 * finally."); }
	 */
}
// 抛出一个异常
function createError() {
	throw new Error("CreateError run Error throw!");
}
//lable 在break,continue 上的用法
function createBreak() {
	alert(1);
	var i = 0;
	alertBreak: // 标记要退出的循环
	for (i = 0; i < 4; i++) {
		alert(i);
		break alertBreak;// 跳出 alertBreak 指定的循环
	}
	alert(4);
}
分享到:
评论

相关推荐

    [JavaScript权威指南(第6版)]

    本书不仅适合初学者系统学习,也适合有经验的 JavaScript 开发者随手翻阅。 David Flanagan是一名程序员,也是一名作家,它的个人网站是 。他在O’Reilly出版的其他畅销书还包括《JavaScript Pocket Reference》、...

    JavaScript—The Definitive Guide, 6th Edition[JavaScript权威指南](英文版)

    经典的JavaScript教程 《O'Reilly精品图书系列:JavaScript权威指南(第6版)》讲述的内容涵盖...《O'Reilly精品图书系列:JavaScript权威指南(第6版)》不仅适合初学者系统学习,也适合有经验的JavaScript开发者随手翻阅。

    《JavaScript》.pdf

    JavaScript是Web前端开发中不可或缺的脚本语言,它为网页提供了交互功能,使得网页从静态展示变成了可以与用户进行互动的平台。本文将从多个方面深入解析JavaScript在Web前端开发中的应用,涵盖从基础语法到高级功能...

    JavaScript标准参考教程

    《JavaScript标准参考教程》是一本全面介绍JavaScript编程语言的书籍,其内容涵盖了从基础语法、数据类型、函数到高级特性如数组操作、错误处理、编程风格等各个方面的知识。阮一峰作为作者,将多年的经验和网络资料...

    深入理解JavaScript系列

    本书是一本全面、深入介绍JavaScript语言的学习指南。本书共分四个部分,第1部分帮助读者快速入手,掌握基本的JavaScript编程要点;第2部分介绍JavaScript的发展和技术背景;第3部分深入探索JavaScript,介绍了语法...

    JavaScript权威指南(JavaScript犀牛书一本)

    《JavaScript权威指南》是JavaScript编程领域的一本经典之作,由著名技术作家David Flanagan撰写,被誉为"JavaScript犀牛书"。这本书深入浅出地讲解了JavaScript语言的核心概念、语法特性和高级特性,对于想要全面...

    JavaScript语言精粹完整版

    《JavaScript语言精粹》作为一本深入浅出讲解JavaScript编程语言的经典之作,对于想要提升自己JavaScript技能的开发者来说,无疑是一份宝贵的资源。本书由Douglas Crockford所著,他不仅是JSON格式的创始人,也是...

    VS2015安装证书,JavaScript_ProjectSystem.msi,JavaScript_LanguageService.msi

    在这个场景中,我们关注的是VS2015的安装过程中涉及到的证书问题以及两个特定的组件:JavaScript_ProjectSystem.msi和JavaScript_LanguageService.msi。 首先,关于“VS2015安装证书”,这通常是指安装过程中需要...

    JavaScript文档

    本资源包包含了多个关于JavaScript的重要参考资料,包括“JavaScript权威指南(英文版).chm”、“javascript5.5.chm”、“css2gb.chm”以及“JavaScript对象与数组参考大全 .chm”。 首先,我们来看“JavaScript权威...

    JavaScript基础语法(ppt)

    JavaScript基础语法(ppt)JavaScript基础语法(ppt)JavaScript基础语法(ppt)JavaScript基础语法(ppt)JavaScript基础语法(ppt)JavaScript基础语法(ppt)JavaScript基础语法(ppt)JavaScript基础语法(ppt)...

    JavaScript之Math对象(源代码)

    JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象(源代码)JavaScript之Math对象...

    JavaScript学习指南 高清 PDF

    JavaScript,一种广泛应用于Web开发的脚本语言,是前端开发的核心技术之一。这份"JavaScript学习指南"高清PDF,无疑为想要深入理解JavaScript的初学者或有一定基础的开发者提供了宝贵的资源。下面,我们将深入探讨...

    JavaScript全栈教程 (廖雪峰) 完整版PDF

    简单地说,JavaScript是一种运行在浏览器中的解释型的编程语言。在Web世界里,只有JavaScript能跨平台、跨浏览器驱动网 页,与用户交互。 《JavaScript全栈教程》是小白的零基础JavaScript全栈教程。从基础入门在...

    JavaScript书籍(JavaScript从入门到精通(第2版).pdf+高性能JavaScript.pdf)

    这两本书籍,"JavaScript从入门到精通(第2版)" 和 "高性能JavaScript",分别涵盖了JavaScript的基础知识和优化技巧,对于想要深入理解并提升JavaScript技能的开发者来说是宝贵的学习资源。 "JavaScript从入门到精通...

    JavaScript课堂习题答案

    JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案...

    javascript试题(附答案)

    JavaScript是一种广泛应用于网页和网络应用的编程语言,尤其在客户端脚本方面扮演着核心角色。这份"javascript试题(附答案)"是为初学者设计的,旨在帮助他们更好地理解和掌握JavaScript的基础知识。 一、变量与数据...

    javaScript api

    JavaScript API 是一种重要的编程资源,它为开发者提供了与JavaScript语言交互的接口和工具。这个离线版的JavaScript API 指南,以CHM(Compiled Help Manual)格式提供,是开发者学习和查阅JavaScript相关功能和...

    现代JavaScript教程

    现代JavaScript教程是一个全面的学习资源,旨在帮助开发者深入理解JavaScript这一重要的编程语言。JavaScript,作为Web开发的核心技术之一,被广泛用于构建交互式的网页和应用程序。本教程覆盖了从基础概念到高级...

    .NET的Javascript运行库Javascript.Net

    JavaScript.Net 是一个基于.NET框架的JavaScript运行库,它允许C#开发者在.NET环境中执行JavaScript代码,从而实现.NET与JavaScript之间的互操作性。这个项目对于那些需要在服务器端或者桌面应用中利用JavaScript的...

    org.mozilla.javascript-1.7.2.jar

    《深入解析org.mozilla.javascript-1.7.2.jar》 在Java开发中,JavaScript引擎的使用日益广泛,其中Mozilla的Rhino引擎是备受开发者青睐的一款。本文将围绕"org.mozilla.javascript-1.7.2.jar"这个资源包,详细讲解...

Global site tag (gtag.js) - Google Analytics