javascript 冒号 使用说明


Posted in Javascript onJune 06, 2009

老在眼前晃,于是在网上搜吧,查资料,很郁闷网上介绍冒号用法的贴子不多,而且比较零碎,也不够深入,看完让人更迷糊,折腾了两天,终于对冒号(:)有了更进一步的了解,希望对想了解冒号用法的人有所帮助。
1、switch语句分支
2、?:三元表达式的false
3、声明对象直接量的成员
4、声明标签

1和2相信地球人都知道吧?如果有人不知道,那我改成地球上的程序员都知道,哈哈
3、对象直接量我们也经常用,什么是对象直接量呢?
对象直接量(也称为对象初始化程序)是由一个列表构成的,这个列表的元素是用冒号分隔的属性/值对,元素之间用逗号隔开了,整个列表包含在花括号之中。
javascript中的对象可以像C#、JAVA这些面向对象的语言中的对象一样,拥有属性和方法。
我们创建javascript对象有很多种方法,例如,你可以用Object创建,

var obj1 = new Object(); 
obj1.X = "20px"; 
obj1.Y = "30px"; 
obj1.myFunction = function() { alert("我是一个方法!"); }; 
obj1.myFunction();

用对象直接量创建一个对象:
var obj2={X:"20px",Y:"30px",myFunction:function(){alert("我是一个方法!");}} 
obj2.myFunction();

用对象直接量创建对象看上去很简洁.
当然你也可以先写个类似Class类的东西然后用构造函数创建:
function myClass(x, y) { 
this.X = x; 
this.Y = y; 
} 
myClass.prototype.myFunction=function(){ 
alert("我是一个方法!"); 
} 
var obj3 = new myClass("20px", "30px"); 
obj3.myFunction();

4、声明标签
脚本语言有很多,除了javascript之外,我们也可以用其它脚本语言来实现javascript所能实现的功能;
例:
<input type="button" onclick="vbscript:vbFunction()" value='按钮'/>
当点击按钮时就会用vbscript语法去执行你用vbscript定义的vbFunction方法;
如果把onclick后面的vbscript:vbFunction(),改成javascript:vbFunction();就会出错。
这些声明你也可以不写直接调用方法,
<input type="button" onclick="vbFunction()" value='按钮'/>
这时onclick中的方法, 无论你用vbscript还是javascript,IE浏览器会自行识别,用相应的语法去执行,当然其它浏览器是不支持vbscript的.
平时我们用javascript习惯上是加声明的,也就是"javascript:",
<input type="button" onclick="javascript:alert('你点击了我!')" value='按钮'/>
"javascript:"经常被那些自称黑客的人们利用,利用"javascript:"绕过一些简单的或者更高级一点的html表单限制及cookie/session验证;以及SQL注入.如果想了解可以到别的地方查,不过学会千万不要搞破坏啊,哈哈
做个简单的小例子:
首先打开www.baidu.com百度的首页,然后直接把下面这句复制到浏览器的地址栏中,按回车,
javascript:alert(document.forms[0].wd.value='csdn');document.forms[0].submit()
效果怎么样呢?不错,我们利用javascript直接操作了搜索框中的文本,还有执行了表单的提交,更复杂的操作,可以自己研究。
Javascript 相关文章推荐
fix-ie5.js扩展在IE5下不能使用的几个方法
Aug 20 Javascript
js获取单元格自定义属性值的代码(IE/Firefox)
Apr 05 Javascript
YUI Compressor压缩JavaScript原理及微优化
Jan 07 Javascript
浅谈window对象的scrollBy()方法
Jul 15 Javascript
通过javascript进行UTF-8编码的实现方法
Jun 27 Javascript
值得分享的JavaScript实现图片轮播组件
Nov 21 Javascript
将angular-ui的分页组件封装成指令的方法详解
May 10 Javascript
浅谈在fetch方法中添加header后遇到的预检请求问题
Aug 31 Javascript
JavaScript设计模式之模板方法模式原理与用法示例
Aug 07 Javascript
Vue中插入HTML代码的方法
Sep 21 Javascript
Vue+abp微信扫码登录的实现代码示例
Jan 06 Javascript
Jquery+javascript实现支付网页数字键盘
Dec 21 jQuery
JavaScript 封装Ajax传递的数据代码
Jun 05 #Javascript
Firefox outerHTML实现代码
Jun 04 #Javascript
IE innerHTML,outerHTML所引起的问题
Jun 04 #Javascript
js 鼠标点击事件及其它捕获
Jun 04 #Javascript
一些常用的JS功能函数(2009-06-04更新)
Jun 04 #Javascript
javascript globalStorage类代码
Jun 04 #Javascript
IE8 兼容性问题(属性名区分大小写)
Jun 04 #Javascript
You might like
Ubuntu 11.10 安装Node.js的方法
2011/11/30 Javascript
JSP跨iframe如何传递参数实现代码
2013/09/21 Javascript
使用jQuery和PHP实现类似360功能开关效果
2014/02/12 Javascript
jQuery异步验证用户名是否存在示例代码
2014/05/21 Javascript
JavaScript中document对象使用详解
2015/01/06 Javascript
jQuery选择器源码解读(五):tokenize的解析过程
2015/03/31 Javascript
javascript字符串函数汇总
2015/12/06 Javascript
javascript cookie基础应用之记录用户名的方法
2016/09/20 Javascript
有关suggest快速删除后仍然出现下拉列表的bug问题
2016/12/02 Javascript
AngularJS实现用户登录状态判断的方法(Model添加拦截过滤器,路由增加限制)
2016/12/12 Javascript
js实现鼠标跟随运动效果
2020/08/02 Javascript
jQuery实现碰到边缘反弹的动画效果
2018/02/24 jQuery
vue加载自定义的js文件方法
2018/03/13 Javascript
解决JS表单验证只有第一个IF起作用的问题
2018/12/04 Javascript
[06:14]《辉夜杯》外卡赛附加赛 4支战队巡礼
2015/10/23 DOTA
不要用强制方法杀掉python线程
2017/02/26 Python
浅谈python socket函数中,send与sendall的区别与使用方法
2017/05/09 Python
python负载均衡的简单实现方法
2018/02/04 Python
解决安装python库时windows error5 报错的问题
2018/10/21 Python
如何使用Python实现斐波那契数列
2019/07/02 Python
如何实现Django Rest framework版本控制
2019/07/25 Python
Python实现Restful API的例子
2019/08/31 Python
Python将QQ聊天记录生成词云的示例代码
2021/02/10 Python
html5写一个BUI折叠菜单插件的实现方法
2019/09/11 HTML / CSS
什么是.net
2015/08/03 面试题
餐饮业创业计划书范文
2014/01/06 职场文书
光盘行动倡议书
2014/02/02 职场文书
党的群众路线教育实践活动个人对照检查材料
2014/09/22 职场文书
学习党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
社区综治工作汇报
2014/10/27 职场文书
2014年租房协议书范本
2014/10/30 职场文书
小学英语课教学反思
2016/02/15 职场文书
幼儿园2016年圣诞活动总结
2016/03/31 职场文书
mysql字符串截取函数小结
2021/04/05 MySQL
Java生成读取条形码和二维码的简单示例
2021/07/09 Java/Android
Mysql如何实现不存在则插入,存在则更新
2022/03/25 MySQL