Ruffy javascript 学习笔记


Posted in Javascript onNovember 30, 2009

1,javascript的原型模型:prototype 在实现面向对象,(像是定义一个类的时候)需要一个构造函数来定义对象的成员,而方法去依附在该构造函数的原型上.

2,javascript中,为了实现继承,必须将子类构造函数的prototype设置为一个父类的对象实例.

3,css的方块套方块模型:
最外是margin 是用来设置一个元素所占的空间的边缘到相邻元素的距离
边框:border 用来设定一个元素的连线
padding 用来设置元素内容互元素边框的距离
还有背景属性是content 和 padding 区域,即内容和间隙
css中的属性中的 width 和 height 指的是 content 区域的宽和高,这是IE中,在firefox里得加上上面的边边框框。

4,System.Drawing.Imaging.BitmapData..将一个bitmap锁定到内存中..
有两个函数将图像数据锁定到内存中
一个是:Bitmap.LockBits(Rectangle rect,ImageMode flags,PixelFormat format)
还有一个是:Bitmap.LockBits(Rectangle rect,ImageMode flags,PixelFormat format,BimapBitData bitmapData)
bitmapData 有一个重要的属性Scan0,是一个指针,指向图片数据所在内存的第一个位置.使用内存跟踪,将Scan0的值填入地址中,可以看到内存的分配情况.
我们可以用System.Runtime.InteropServices.Marshal.WriteByte(IntPtr ptr,byte val)来改更改指定位置的像素值了.
IntPtr 类型称为"平台特定整数类型",它用于本机资源,如窗口句柄句.

5,反射:反射是一个运行库类型发现的过程.通过反射可以得到一个给定程序集所包含的所有类型的列表,这个列表包括了给定类型中定义的方法,字段,属性和事件.也可以动态地发现一组给定类支持的接口,方法的参数和其他相关信息如基类,命名空间,数据清单等.
javascript 里的 for/in 语句:
for(variable in obj)
statement;
最有用的一个功能就是它可以枚举一个对象所有可枚举的属性,包括原生属性和继承属性,这样就为javascript提供了一种很强大的反射机制.
例如:
--for(var each in document.body)
-- document.write(each+":"+document.body[each]+<br />);
--//枚举并打印出body所有的属性
variable 可以是任意的表达式..
比如:
--function keys(obj){
-- var ret= new Array();
-- var i=0;
-- for(ret[i++] in obj)
-- return ret;
-- }
以上函数将一个对象的属性作为一个数组返回.

6,html-table 控件cellpadding 单元格里的内容与单元格之间的距离
cellspacing属性表示单元格之间的距离
对齐方式有:align 是水平对齐有left right center(指的是单元格里的元素在水平方向上的对齐)
vlign 是垂直对齐 有top bottom middle

7,Base64:按照RFC2045的定义,Base64被定义为:Base64内容传送编码被设计用来把任意序列的8位字节描述为一种不易被人直接识别的形式。(The Base64 Content-Transfer-Encoding is designed to represent arbitrary sequences of octets in a form that need not be humanly readable.)

8,margin:0px auto 上下边距为0px 左右自动调整。

9,js里 opener 和 self的区别:opener对<打开当前窗口的对象>的引用,如果当前窗口被用户打开,则opener的值为null
self自引用属性,是对当前window对象的应用,与window属性同义.
(self代表自身窗口,opener代表打开自身的那个窗口,比如窗口A打开窗口B.如果靠window.open方法,则对于窗口B,self代表B自己,而opener代表窗口A.)

10,wnd.location.search.slice(1); //得到地址栏上"?"后面的字符串,wnd是一个window对象的引用.

11,表达式中g的含义
g /global 代表全局搜索
i /ignore 代表忽略大小写
gi 以上的组合

12,正向预查和反向预查
(?=pattern) (?!pattern) 非获取,只是为了检验后面出现的是不是预想的字符串

13,setcapture 鼠标捕获:鼠标捕获(setCapture)作用是将鼠标事件捕获到当前文档的指定的对象。这个对象会为当前应用程序或整个系统接收所有鼠标事件。setCapture捕获以下鼠标事件:onmousedown、onmouseup、onmousemove、onclick、ondblclick、onmouseover和onmouseout。

14,javascript 里用in delete 和用对象作为集合,可以很方便的实现一个集合(delete 运算符删除所指定的对象属性,数组元素,或者变量.删除成功返回true.同时 若运算数不存在时也返回true)
例如:
---var aSet= new Object();
---sSet["key"]=true; //插入新元素(无论是否已经存在)
---if("key1" in aSet)
--- delete aSet["key1"] //如果key1存在就删除
---if(delete aSet["key2"])
--- aSet["key2"]=true; //删除原有元素,更新key2

15,js里的-0 和 |0 操作前者可以将一个字符隐式转换为一个数字,后者会将一个符点数取整.

16,[] :存取对象和数组元素的双目运算符。
当[] 的第二个运算数为对象时,先调用它的toString() 方法来进行转换,如果转换失败,再调用valueOf()方法来转换。

17,javascript异常总是沿调用堆栈向上传播,事件传播也是沿相同的方向.

18,javascript数组的length属性不但可以读还可以写,设置数组的length为0,可以清除数组中的所有元素(不包括那些数组下标不为整数的数组元素.)

19,虽然null 和 undefined 不同但运算符 "==" 却将它们视为相等的值(返回 true)

20,javascript 装箱和拆箱:把基本数据类型转换为对应的引用类型的操作被称为装箱,反之,把引用类型转换为对应的值类型,被称为拆箱.

21,JSON :对象常量&数组常量
javascript object notation javascript<对象表示方法>
JSON 是由javascript发展而来的一种简单的数据交换协议,它的数据格式就是一个合法的javascript对象常量

22,absolute属性与left、top配合起来制作相关的“悬浮层”效果。然而有时候我们需要针对某一个容器的悬浮效果,而不是针对窗口的。这时候通过高度、宽度的计算不但麻烦,而且几乎无法完美实现效果。只要把其上一级的样式属性position设置为relative就可以了。如用div 嵌套 ul 和 li

23,关于DOM元素的移动:用object.appendChild(object.firstChild)可以将第一个元素移到最后,但是这在table元素上应用的时候的移动了</body>标签外面(不显示)..所以移动table元素里的行的时候应该用MoveRow 方法.

Javascript 相关文章推荐
iframe 异步加载技术及性能分析
Jul 19 Javascript
JavaScript高级程序设计 阅读笔记(七) ECMAScript中的语句
Feb 27 Javascript
判断JS对象是否拥有某种属性的两种方式
Dec 02 Javascript
jquery动态添加删除(tr/td)
Feb 09 Javascript
JS实现简单路由器功能的方法
May 27 Javascript
ashx文件获取$.ajax()方法发送的数据
May 26 Javascript
vue+mockjs模拟数据实现前后端分离开发的实例代码
Aug 08 Javascript
JS实现div模块的截图并下载功能
Oct 17 Javascript
JS实现十分钟倒计时代码实例
Oct 18 Javascript
vue.js循环radio的实例
Nov 07 Javascript
微信小程序 SOTER 生物认证DEMO 指纹识别功能
Dec 13 Javascript
微信小程序入门之绘制时钟
Oct 22 Javascript
jquery 分页控件实现代码
Nov 30 #Javascript
JS 动态获取节点代码innerHTML分析 [IE,FF]
Nov 30 #Javascript
Aptana调试javascript图解教程
Nov 30 #Javascript
jQuery chili图片远处放大插件
Nov 30 #Javascript
document.body.scrollTop 值总为0的解决方法 比较常见的标准问题
Nov 30 #Javascript
javascript 设置某DIV区域内的checkbox复选框
Nov 30 #Javascript
Javascript 构造函数,公有,私有特权和静态成员定义方法
Nov 30 #Javascript
You might like
php中异常处理方法小结
2015/01/09 PHP
PHP flush 函数使用注意事项
2016/08/26 PHP
Laravel框架实现利用中间件进行操作日志记录功能
2018/06/06 PHP
js change,propertychange,input事件小议
2011/12/20 Javascript
JavaScript改变HTML元素的样式改变CSS及元素属性
2013/11/12 Javascript
动态设置form表单的action属性的值的简单方法
2016/05/25 Javascript
原JS实现banner图的常用功能
2017/06/12 Javascript
JavaScript选取(picking)和反选(rejecting)对象的属性方法
2017/08/16 Javascript
浏览器调试动态js脚本的方法(图解)
2018/01/19 Javascript
微信小程序block的使用教程
2018/04/01 Javascript
JS实现中英文混合文字溢出友好截取功能
2018/08/06 Javascript
vue中组件通信的八种方式(值得收藏!)
2019/08/09 Javascript
JS实现拖动模糊框特效
2020/08/25 Javascript
python删除列表中重复记录的方法
2015/04/28 Python
详解使用Python处理文件目录的相关方法
2015/10/16 Python
Python 序列的方法总结
2016/10/18 Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
2017/11/14 Python
Python set常用操作函数集锦
2017/11/15 Python
python实现pdf转换成word/txt纯文本文件
2018/06/07 Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
2019/02/27 Python
Python3 无重复字符的最长子串的实现
2019/10/08 Python
Pandas实现DataFrame按行求百分数(比例数)
2019/12/27 Python
Python中的Cookie模块如何使用
2020/06/04 Python
Python如何读写二进制数组数据
2020/08/01 Python
CSS超出文本指定宽度用省略号代替和文本不换行
2016/05/05 HTML / CSS
Allsole美国/加拿大:英国一家专门出售品牌鞋子的网站
2018/10/21 全球购物
沙特阿拉伯电子产品和家用电器购物网站:Black Box
2019/07/24 全球购物
美国翻新电子产品商店:The Store
2019/10/08 全球购物
Burt’s Bees英国官网:世界领先的天然个人护理品牌
2020/08/17 全球购物
求最大连续递增数字串(如"ads3sl456789DF3456ld345AA"中的"456789")
2015/09/11 面试题
.net软件工程师应聘上机试题
2015/03/10 面试题
幼儿园教师辞职信
2014/01/18 职场文书
同居协议书范本
2014/04/23 职场文书
我的中国梦演讲稿高中篇
2014/08/19 职场文书
教师党员个人整改措施
2014/10/27 职场文书
总结Pyinstaller打包的高级用法
2021/06/28 Python