- 博客(45)
- 资源 (1)
- 收藏
- 关注
转载 Getter和Setter
Getter是一种获取一个属性的值的方法,Setter是一种设置一个属性的值的方法。可以为任何预定义的核心对象或用户自定义对象定义getter和setter方法,从而为现有的对象添加新的属性。有两种方法来定义Getter或Setter方法:在对象初始化时定义在对象定义后通过Object的__defineGetter__、__defineSetter__方法来追加定义在使用对象初
2014-11-28 00:42:25 684
转载 JavaScript eval处理JSON数据 为什么要加括号
由于Ajax的兴起,JSON这种轻量级的数据格式作为客户端与服务器之间的传输格式逐渐地流行起来,进而出现的问题是如何将服务器端构建好的JSON数据转化为可用的JavaScript对象。利用eval函数无疑是一种简单而直接的方法。在转化的时候需要将JSON字符串的外面包装一层圆括号:var jsonObject = eval_r("(" + jsonFormat + ")");为什么要加括号
2014-11-28 00:13:20 1346 1
转载 对话框和cookie
对话框除了alert提示框意外,还有两个框confirm确认框,prompt提示用户输入内容框//确认框if(confirm("你是否真得要删除?")){ console.log("Clicked OK")}else{ console.log("Clicked Cancel")}//提示用户输入框//prompt函数有两个参数第一个参数为提示信息,第二个参数为输入框默认值,
2014-11-25 20:59:45 572
转载 var foo = function () {} 和 function foo()
最关键的区别在于JavaScript 函数和变量声明的“提前”(hoist)行为。the Google style guide 建议我们采用方法一。简单的说 如果我们使用 匿名函数var FUNCTION_NAME = function() { /* FUNCTION_BODY */}; 这种方式, 编译后变量声明FUNCTION_NAME 会“被提前”了,但是他
2014-11-23 22:26:33 2276
转载 12中应该避免使用的语法
1. ==Javascript有两组相等运算符,一组是==和!=,另一组是===和!==。前者只比较值的相等,后者除了值以外,还比较类型是否相同。请尽量不要使用前一组,永远只使用===和!==。因为==默认会进行类型转换,规则十分难记。如果你不相信的话,请回答下面五个判断式的值是true还是false: false == 'false' false == undefined
2014-11-23 20:26:05 647
原创 函数的arguments,caller,callee,call,apply
1.arguments//arguments.length和functionName.lengthfunction argumentTest(arg1, arg2){ //arguments的长度是变化的,实际传进几个参数就是几个。 console.log(arguments.length) //函数名.length代表函数定义时参数的个数,一旦函数定义,该值就固定了。 con
2014-11-23 13:55:12 608
原创 再说闭包
闭包var getNextId = function(){ var id = 1; return function(){ return id++ }}()console.log(getNextId());console.log(getNextId());
2014-11-23 13:11:53 501
转载 !立即执行!
特点:- 地道的 JavaScript,威力强大;- 实现代码隐藏(JavaScript 中只有函数能创建作用域);- 隔离(防止污染或污染别人,并且为变量取名称很杀脑细胞);一些用途:- 为有大量临时变量的代码,创建一个作用域,防止命名冲突;- 防止作用域/第三方代码污染(许多库的代码最外层都被这样围了起来);- 视觉上的分段(一些很长的函数化的代码中比较
2014-11-23 11:47:27 605
转载 内置对象一览表
内置对象和宿主对象不可以作为基类继承’S的对象是自动垃圾回收的,一般情况不需要手动删除。如果想手动删除某变量只需要将其赋值为null。objectXXX = null //赋值为null后,垃圾收集程序会将其释放.若果某个变量有多个引用,则需要将每个引用都设置为nullObjectFunctionArrayStringBooleanNumberDate
2014-11-22 10:38:57 552
转载 对象继承机制
对象继承机制对象冒充构想原始的 ECMAScript 时,根本没打算设计对象冒充(object masquerading)。它是在开发者开始理解函数的工作方式,尤其是如何在函数环境中使用 this 关键字后才发展出来。其原理如下:构造函数使用 this 关键字给所有属性和方法赋值(即采用类声明的构造函数方式)。因为构造函数只是一个函数,所以可使 ClassA 构造函
2014-11-22 09:29:04 528
原创 函数以及函数对象
1.函数参数javascript中函数的参数255以内的任意个数,而且定义与调用的参数个数可以不相等。在函数定义时可以不指定参数,在函数内部通过 arguments[]数组来访问。function argumentTest(argWithName){ //参数的个数跟函数定义无关,实际调用的长度记录在arguments[]数组中。 console.log("Number of arg
2014-11-21 22:22:16 495
转载 delete与void
deletedelete 运算符删除对以前定义的对象属性或方法的引用。例如:var o = new Object;o.name = "David";alert(o.name); //输出 "David"delete o.name;alert(o.name); //输出 "undefined"在这个例子中,删除了 name 属性,意味着强制解除对它的引用,将其设置为 u
2014-11-21 19:46:18 857
原创 JS对象-继承-私有成员
JS中得对象和C++,JAVA的对象概念上有些不同,JS的对象是通过原型(prototype)来组装的,也就是说,并不是像Java一样,先去定义一个完整的类属性,方法。然后再使用类去创建对象。JS的对象是不停的组装的,随时需要随时通过原型组装进来。所有的JS定义的变量函数都属于window中一个原型。与现实世界对比,window就像是整个宇宙,所有的原型都在宇宙之中,原型之间可以相互组
2014-11-20 23:29:47 1081
原创 标量类型与类型转换
查看javascript的类型:typeof(varname),注意typeof返回结果都是小写,而真正类型转化用得类型都是大写字母开头。undefined - 如果变量是 Undefined 类型的,只声明,未赋值的变量是未定义的。当函数无返回值是,其返回值为未定义。boolean - 如果变量是 Boolean 类型的number - 如果变量是 Number 类型的,所有的数字,
2014-11-19 21:42:21 852
原创 动态设定文本样式
根据当前的网址,来设定某些内容的格式,比如下面根据用户访问的网址不同,设置对应的链接显示下划线。.under{border-bottom:solid 2px;}window.onload = function(){if(document.URL == "http://localhost/"){atr = document.createAttribute("class");atr.val
2014-11-19 20:22:57 552
转载 DOM小结-前面文章未涉及到得部分
DOM总结:Document Object ModelDOM定义了访问 HTML 和 XML文档的标准,针对HTML有一些特殊的方法称之为HTML DOM。根据 W3C的 HTML DOM 标准,HTML 文档中的所有内容都是节点:整个文档是一个文档节点每个 HTML元素是元素节点(元素节点是不包含文本的,需要文本节点)HTML元素内的文本是文本
2014-11-18 21:32:43 486
原创 DOM方法
实际livar p = document.createElement("p");var txt = document.createTextNode("hello text");p.appendChild(txt); //将txt文本节点添加到元素节点p下面var root = document.getElementById("root"); //获取要讲p内容插入的根位置ro
2014-11-18 20:23:57 600
原创 正则表达式
1.隐式创建var regExp = /正则表达式/[g][i][m] g 全局匹配i表示ignoreCase insensitivem mutiline多行匹配全局匹配在创建正则表达式对象时如果使用了“g”标识符或者设置它了的global属性值为ture时,那么新创建的正则表达式对象将使用模式对要将要匹配的字符串进行全局匹配。在全局匹配模式下可以对指定要查找的字
2014-11-16 21:59:54 438
原创 PHP常用mysql函数
能使用mysql_query()实现的功能,尽量不用php的函数,增加移植性。同时不需要记忆这么多得函数。比如mysql_select_db("db_name"),可以用下面语句代替。可以用mysql_query("use database db_name")desc, show (tables/variables), select 等都会返回结果集,结果集都可以通过下面三个函数取
2014-11-15 18:02:50 636
原创 Trigger
可以针对insert,update,delete的执行前,执行后分别创建6种事件触发器,不可以对select创建。before insert/update/delete;after insert/update/delete;创建触发器create trigger trigger_name after update on table_namefor each rowu
2014-11-15 12:07:13 494
原创 Transaction
InnoDB支持事务,MyIsam不支持。transaction交易,业务,事务;办理,处理;(一笔)交易,(一项)事务;例如转账操作:update t1 set money=money-3;update t2 set money = money+3;1.基本概念并非任意的对数据库的操作序列都是数据库事务。数据库事务拥有以下四个特性,习惯上被称之为AC
2014-11-15 08:33:44 575
原创 PHP定时 & cpanel守护作业
/usr/bin/php /home/domainname/public_html/datatest.php >/dev/null 2>&1
2014-11-14 23:36:10 908
原创 视图
创建视图:create view view_name as select id, name from table_name;视图其实只保存了一个sql语句,每次执行视图操作,都会执行该sql语句。select * from (select id, name from table_name) as tmp_table;视图的好处是用来1.隐藏数
2014-11-12 22:41:03 426
原创 数据备份
mysiam表是单个数据库保存为单个文件的,可以直接通过备份文件即可。tbl_name.frm,tbl_name.myd, tbl_name.myi但是innodb将所有的innodb数据库保存为一个文件,所以想单独备份一个数据库,通过保存文件无法做到。通用的备份方法用mysqldump导出数据:将建表结构,与插入数据的sql语句生成,并备份
2014-11-11 21:21:22 468
原创 CRUD进阶
create table tb(id int primary key auto_increment,name varchar(5),age int );1.各种数据增加方法上面表中,name和age都可以为空,则在插入语句时可以有如下选择:insert into tb values ( null,”name”, 3); //id值为null,主键会自
2014-11-10 23:13:48 660
原创 mysql导出导入记录
1.导出文本数据确保tmp目录是可以写数据的,chmod 777 tmpselect * into outfile “/Users/high/tmp/sql”from t1;数据默认保存格式为每条记录一行,每个字段用tab隔开。可以自己指定分割。fields terminated by“,”enclosed by “” //设置字段用什么包裹,这
2014-11-10 21:12:47 724
原创 终端命令
? (\?) 与help命令等同,输出此控制台下可用的子命令clear (\c) 清屏命令connect (\r) 重新连接到服务器.可选参数有数据库和服务器 Optional delimiter (\d) 设置SQL语句的分界符,默认是分号ego (\G) 发送命令给mysql服务器.结果将垂直显示.exit
2014-11-09 20:26:58 464
原创 jion查询
jion查询jion查询,是在不同表的字段之间的连接查询。上一节的union子查询,在不同的行之间进行联合查询内连接,外连接内连接的结果只包含连接各方同时存在数据的记录。外连接中只要有一方连接有数据就可以显示出来,没有数据的一方显示NULLselect t1.col, t2.col from t1
2014-11-09 20:11:25 749
原创 select基本操作
order byasc升序 ascending desc降序 descending多字段排序:先按照第一个字段排序,如果不能区分,按照第二个字段排序。排序是对检索出来的数据进行的排序,所以order by必须放在where的后面。select * from t1 order by col1,col2 desclimit分页排序时用此命令就非常方便啦。limit语法:lim
2014-11-09 10:22:18 655
原创 存储引擎
存储引擎是什么如果你在研究大量的临时数据,你也许需要使用内存存储引擎。内存存储引擎能够在内存中存储所有的表格数据。又或者,你也许需要一个支持事务处理的数据库(以确保事务处理不成功时数据的回退能力)。这些不同的技术以及配套的相关功能在MySQL中被称作存储引擎(也称作表类型)。MySQL默认配置了许多不同的存储引擎,可以预先设置或者在MySQL服务器中启用。你可以选择适用于服务器、数据库和表
2014-11-08 23:39:34 628
转载 web服务层不需要外键
尽管在讨论数据库时知道表与表之间有外键关系, 但是具体到表定义就省略掉外键定义, 而选择在应用层管理相关的外键逻辑. 只因为听说外键性能不好, 或者说有外键后表与表之间太耦合了, update, delete等操作都会涉及相关的表.
2014-11-08 23:33:24 941
原创 字段属性&外键
字段属性1.null/not null如果一个字段中没有指定DEFAULT修饰符,MySQL会依据这个字段是NULL还是NOT NULL自动设置默认值。如果指定字段可以为NULL,则MySQL为其设置默认值为NULL。如果是NOT NULL字段,MySQL对于数值类型插入0,字符串类型插入空字符串,时间戳类型插入当前日期和时间,ENUM类型插入枚举组的第一条。c
2014-11-08 22:10:28 1467 1
原创 php+mysql 处理时间
虽然mysql中有自己的时间类型,但是为了兼容性考虑,php中一般用time函数取出unix时间戳。保存到数据库中。1.unix时间戳PHP中的time函数返回的就是unix timestamp,默认情况下PHP解析显示位格林威治标准时间。是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数。2.unix时间戳转化为人类识别日期$str = date(“Y-m
2014-11-08 17:10:41 1754
原创 mysql数据类型
1.整数类型整数类型;类型大小范围(有符号)范围(无符号)用途TINYINT1 字节(-128,127)(0,255)小整数值SMALLINT2 字节(-32 768,32 767)(0,65 535)大整数值MEDIUMINT3 字节(-8 388 608,8 388 60
2014-11-08 14:37:47 622
原创 mysql命令进阶
1.查看当前数据库的变量,版本号,编码等。show variables;支持匹配,比如只查看编码相关的show variables like "character%";2.显示校对规则用于排序。或where查询条件的对比时用。show collation;下面ci表示不区分大小写,cs区分大小写,bin是按照二进制比较。ci case insensiti
2014-11-08 09:55:36 507
原创 mysql基础命令
1.可以用特殊字符串创建数据库,比如create关键字,1234等,用 ``反单引号括起来就可以啦。有些sql脚本为了防止有些特殊符号,执行的语句全部加上单反引号。2.mysql本身不区分大小写,但是不同的操作系统会区分大小写,所以最好统一全部用小写。在脚本中可以直接用 /* */注释3.数据库登录mysql -u username -p password显示所
2014-11-07 20:26:03 538
原创 json
JSON 语法是 JavaScript 对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JSON 名称/值对JSON 数据的书写格式是:名称/值对。名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值:“firstName” : "John"等价于 fristName = JohnJSON
2014-11-02 16:45:01 477
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人