在IOS开发中遇到数据库保存很正常。但是要保存的对象中如果不全是基本数据类型,或者不是数据库是支持的类型,是不是瞬间石化了。
例如:
在一个Message对象中包含一个Attatchment对象,现在要求是每个Message要保存起来,选择sqlite数据库保存是不是很正常(反正我是用的他),但是sqlite中并不支持Attatchment类型,怎么搞???
法一:把Attatchment中的所有属性放到Message中,没有问题,也是一个很好的办法,但是这样是不是有点牵强呢?
法二:也是本人今天要介绍的方法,就是对象归档成NSData后在存储。查询出来的时候在解档一下就OK了。废话少说,直接给出代码(数据库存储用到了第三方库FMDB):
给出Attatc...
在ajax应用中,通常一个页面要同时发送多个请求,如果只有一个XMLHttpRequest对象,前面的请求还未完成,后面的就会把前面的覆盖掉,如果每次都创建一个新的XMLHttpRequest对象,也会造成浪费。解决的办法就是创建一个XMLHttpRequset的对象池,如果池里有空闲的对象,则使用此对象,否则将创建一个新的对象。 下面是我最近写的一个简单的类: /** * XMLHttpRequest Object Pool * * @author legend <legendsky@hotmail.com> * @link http://www.ugia.cn/?p=...
RegExp对先看整个字符串是不是匹配,如果没有发现匹配,先去掉最后字符串中的最后一个字符,并再次尝试,如果还没有发现匹配,那么再次去掉最后一个字符,这个过程会一直重复下去直到发现匹配或不剩任何字符串,上面的简单量词都是贪婪量词。test():判断某个字符串是否匹配指定的模式 exec():返回一个数组,数组中的第一个条目是第一个匹配,其他的是反向引用 match():返回一个包含在字符串中的所有匹配的数组 search():返回在字符串中出现的第一个匹配的位置 replace():用另一个字符串来替换某个字符串中的所有匹配 split():将字符串分割成一系列子串并通过一个数组将它们返回 global:表示g是否被设置 ignoreCase:表示i是否被设置 mu...
:selected 返回值:Array<Element(s)>
概述
匹配所有选中的option元素
示例
描述:
查找所有选中的选项元素
HTML 代码:
<select>
<option value="1">Flowers</option>
<option value="2" selected="selected">Gardens</option>
<option value="3">Trees</option>
</select>
jQuery 代码:
$("select option:selected")
结果:
[ <option value="2" selected="selected">Gardens</option> ]
...
:disabled 返回值:Array<Element(s)>
概述
匹配所有不可用元素
示例
描述:
查找所有不可用的input元素
HTML 代码:
<form>
<input name="email" disabled="disabled" />
<input name="id" />
</form>
jQuery 代码:
$("input:disabled")
结果:
[ <input name="email" disabled="disabled" /> ]
...
:checked 返回值:Array<Element(s)>
概述
匹配所有选中的被选中元素(复选框、单选框等,不包括select中的option)
示例
描述:
查找所有选中的复选框元素
HTML 代码:
<form>
<input type="checkbox" name="newsletter" checked="checked" value="Daily" />
<input type="checkbox" name="newsletter" value="Weekly" />
<input type="checkbox" name="newsletter" checked="checked" value="Monthly" />
</form>
jQ...
:enabled 返回值:Array<Element(s)>
概述
匹配所有可用元素
示例
描述:
查找所有可用的input元素
HTML 代码:
<form>
<input name="email" disabled="disabled" />
<input name="id" />
</form>
jQuery 代码:
$("input:enabled")
结果:
[ <input name="id" /> ]
...
index(subject) 返回值:Number
概述
搜索与参数表示的对象匹配的元素,并返回相应元素的索引值。
如果找到了匹配的元素,从0开始返回;如果没有找到匹配的元素,返回-1。
参数
subjectElement
要搜索的对象
示例
描述:
返回ID值为foobar的元素的索引值。
HTML 代码:
<div id="foobar"><div></div><div id="foo"></div></div>
jQuery 代码:
$("div").index($('#foobar')[0]) // 0
$("div").index($('#foo')[0]) // 2
$("div").index($('#foo')) //...
get(index) 返回值:Element
概述
取得其中一个匹配的元素。 num表示取得第几个匹配的元素。
这能够让你选择一个实际的DOM 元素并且对他直接操作,而不是通过 jQuery 函数。$(this).get(0)与$(this)[0]等价。
参数
indexNumber
取得第 index 个位置上的元素
示例
描述:
HTML 代码:
<img src="test1.jpg"/> <img src="test2.jpg"/>
jQuery 代码:
$("img").get(0);
结果:
[ <img src="test1.jpg"/> ]
...
get() 返回值:Array<Element>
概述
取得所有匹配的 DOM 元素集合。
这是取得所有匹配元素的一种向后兼容的方式(不同于jQuery对象,而实际上是元素数组)。
如果你想要直接操作 DOM 对象而不是 jQuery 对象,这个函数非常有用。
示例
描述:
选择文档中所有图像作为元素数组,并用数组内建的 reverse 方法将数组反向。
HTML 代码:
<img src="test1.jpg"/> <img src="test2.jpg"/>
jQuery 代码:
$("img").get().reverse();
结果:
[ <img src="test2.jpg"/> <img src="test1.jpg"/> ]
...
context
概述
jQuery 1.3新增。返回传给jQuery()的原始的DOM节点内容,即jQuery()的第二个参数。如果没有指定,那么context指向当前的文档(document)。
可以与selector一起使用,用于精确检测选择器查询情况。这两个属性对插件开发人员很有用。
示例
描述:
检测使用的文档内容
jQuery 代码:
$("ul")
.append("<li>" + $("ul").context + "</li>")
.append("<li>" + $("ul", document.body).context.nodeName + "</li>");
结果:
[object HTMLDocument] //如果是IE浏览器,则返回[object]
BODY
...
selector
概述
jQuery 1.3新增。返回传给jQuery()的原始选择器。
换句话说,就是返回你用什么选择器来找到这个元素的。可以与context一起使用,用于精确检测选择器查询情况。这两个属性对插件开发人员很有用。
示例
描述:
确定查询的选择器
jQuery 代码:
$("ul")
.append("<li>" + $("ul").selector + "</li>")
.append("<li>" + $("ul li").selector + "</li>")
.append("<li>" + $("div#foo ul:not([class])").selector + "</li>");
结果:
ul
ul li
div#foo ul:...
length
概述
jQuery 对象中元素的个数。
当前匹配的元素个数。 size 将返回相同的值。
示例
描述:
计算文档中所有图片数量
HTML 代码:
<img src="test1.jpg"/> <img src="test2.jpg"/>
jQuery 代码:
$("img").length;
结果:
2
size()
概述
jQuery 对象中元素的个数。
这个函数的返回值与 jQuery 对象的'length' 属性一致。
示例
描述:
计算文档中所有图片数量
HTML 代码:
<img src="test1.jpg"/> <img src="test2.jpg"/>
jQuery 代码:
$("img").size();
结果:
2
each(callback)
返回值:jQuery
概述
以每一个匹配的元素作为上下文来执行一个函数。
意味着,每次执行传递进来的函数时,函数中的this关键字都指向一个不同的DOM元素(每次都是一个不同的匹配元素)。而且,在每次执行函数时,都会给函数传递一个表示作为执行环境的元素在匹配的元素集合中所处位置的数字值作为参数(从零开始的整形)。 返回 'false' 将停止循环 (就像在普通的循环中使用 'break')。返回 'true' 跳至下一个循环(就像在普通的循环中使用'continue')。
参数
callbackFunction
对于每个匹配的元素所要执行的函数
示例
描述:
迭代两个图像,并设置它们的 src 属性。注意:此处 this 指代的是 DOM 对...
<html>
<head>
<title>顶层元素</title>
<script src="prototype.js"></script>
<script>
var Person=Class.create();
Person.prototype={
initialize:function(){},
name:'',
birthday:'',
age:'',
Show:function(){alert("This is "+this.name);}
};
function TestPerson()
{
var p=new Person();
p.name="Tom";
p.age=4;
p.birthday="1997-7-1";
p.Show();
};
var User=Class.create();
User.prototype={
initialize:function(){},
userid:'',
Report:function()
{
alert("UserID:"+this.userid...