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 相关文章推荐
JavaScript RegExp方法获取地址栏参数(面向对象)
Mar 10 Javascript
javascript面向对象入门基础详细介绍
Sep 05 Javascript
深入浅析JavaScript中with语句的理解
May 12 Javascript
Js apply方法详解
Feb 16 Javascript
浅谈angularjs中响应回车事件
Apr 24 Javascript
js如何获取网页所有图片
May 12 Javascript
js实现鼠标单击Tab表单切换效果
May 16 Javascript
vue 之 css module的使用方法
Dec 04 Javascript
如何在vue里面优雅的解决跨域(路由冲突问题)
Jan 20 Javascript
js回文数的4种判断方法示例
Jun 04 Javascript
vue-cli或vue项目利用HBuilder打包成移动端app操作
Jul 29 Javascript
vue @ ~ 相对路径 路径别名设置方式
Jun 05 Vue.js
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
成本8450万,票房仅2亿,口碑两极分化,又一部DC电影扑街了
2020/04/09 欧美动漫
PHP实现域名whois查询的代码(数据源万网、新网)
2010/02/22 PHP
JQUERY复选框CHECKBOX全选,取消全选
2008/08/30 Javascript
javascript Window及document对象详细整理
2011/01/12 Javascript
nodeType属性返回被选节点的节点类型介绍
2013/11/22 Javascript
jQuery学习笔记之jQuery中的$
2015/01/19 Javascript
原生JS实现LOADING效果
2015/03/16 Javascript
浅谈JavaScript中的作用域和闭包问题
2015/07/07 Javascript
Javascript实现前端简单的路由实例
2016/09/11 Javascript
jquery.multiselect多选下拉框实现代码
2016/11/11 Javascript
JavaScript验证知识整理
2017/03/24 Javascript
bootstrap table实现x-editable的行单元格编辑及解决数据Empty和支持多样式问题
2017/08/10 Javascript
Bootstrap Table快速完美搭建后台管理系统
2017/09/20 Javascript
js实现登录注册框手机号和验证码校验(前端部分)
2017/09/28 Javascript
JavaScript重复元素处理方法分析【统计个数、计算、去重复等】
2017/12/14 Javascript
vue-cli项目中使用Mockjs详解
2018/05/14 Javascript
详解使用vue-admin-template的优化历程
2018/05/20 Javascript
jQuery AJAX 方法success()后台传来的4种数据详解
2018/08/08 jQuery
vue动画之点击按钮往上渐渐显示出来的实例
2018/09/29 Javascript
基于Fixed定位的框选功能的实现代码
2019/05/13 Javascript
UEditor 自定义图片视频尺寸校验功能的实现代码
2020/10/20 Javascript
python如何重载模块实例解析
2018/01/25 Python
Python unittest模块用法实例分析
2018/05/25 Python
python装饰器练习题及答案
2019/11/01 Python
Python脚本导出为exe程序的方法
2020/03/25 Python
你应该知道的Python3.6、3.7、3.8新特性小结
2020/05/12 Python
Python3爬虫里关于Splash负载均衡配置详解
2020/07/10 Python
python实现图像随机裁剪的示例代码
2020/12/10 Python
英国露营设备和户外服装购物网站:Simply Hike
2019/05/05 全球购物
Moda Italia荷兰:意大利男士服装
2019/08/31 全球购物
教师的实习鉴定
2013/12/15 职场文书
2014年师德师风自我剖析材料
2014/09/27 职场文书
教师三严三实学习心得体会
2014/10/11 职场文书
Python图片检索之以图搜图
2021/05/31 Python
「玫瑰之王的葬礼」舞台剧主视觉图公开
2022/03/21 日漫
MySQL数据库事务的四大特性
2022/04/20 MySQL