JavaScript中的细节分析


Posted in Javascript onJune 30, 2012

JavaScript区分大小写:在JavaScript中变量、函数都是区分大小写的,例如:

function myfunction(){}和 
function myFunction(){}不同

JavaScript中核心对象Array、Object等也是区分大小写。

单引号和双引号:这个问题在学SQLServer拼接字符串"select * from page where name='lida'"时就有疑惑:后面都的三个'到底是双引号在前还是单引号在前?学的多了知道,双引号是编程语言使用的,单引号是SQLserver标明字符串类型的。但是在JavaScript中单引号和双引号没有特殊的区别,都可以用来创建字符串,但是一般情况下JavaScript使用单引号,HTML等属性值必须使用双引号;同时单引号可以包括双引号,双引号也可以包括单引号 ;特殊情况下需要使用转义符号"\",例如:

var temp='<p class="nameA">What\'s this?';

括号的作用:和其他语言一样,JavaScript中的括号同样是两种作用,一种是当作分隔符使用,例如:(1+1)*2;第二种作用是表达式,例如:(1+1)*2;第二种作用是表达式,例如:(function (){})()中被分开的括号为分隔符,后面的括号表示执行方法。

函数的调用和引用:

var temp=myFunction(); 
var temp=myFunction;

因为括号可以代表执行,第一个temp代表的是myFunction函数的返回值,而第二个temp代表的是把myFunction赋值给temp。例如:
<script type="text/javascript"> 
// JavaScript Document 
(function () { 
function $() { 
alert("正在Buffering!"); 
} 
window['LD'] = {} 
window['LD']['$'] = $; 
} 
)(); 
window.onload = LD.$; 
</script>

网页可以正常加载,因为这代表把$方法赋值给了window.onload,页面加载运行的是自己编写的$()函数;如果把这句换成
window.onload=LD.$();运行结果如下;首先会显示“正在Buffering”,然后是
JavaScript中的细节分析
这是因为onload事件不需要返回值,而$函数也没有返回值,所以会导致尚未实现的错误。
换行:无论是用哪种引号创建字符串,中间都不能包含强制换行符。如下:
var temp='<h2 class="nameA">List</h2> 
<ol> 
</ol>'

将导致解析错误,可以使用\或+来换行:
var temp='<h2 class="nameA">List</h2>\ 
<ol>\ 
</ol>\ 
';

大括号和分号可选:
在JavaScript中分号和大括号不是必须的,例如alert('A');和alert('A')没有区别,但是在if语句处运行有差异,最好不要省略。
重载
JavaScript是基于原型的面向对象,没有如C#中的重载,在此我们可以称之为替换,同名函数无论参数个数是否相同,程序都会执行最后一个同名函数,例如function alert(){}将会覆盖JavaScript中的alert函数。
作用域和闭包
可以参加我的博客《JavaScript中的作用域链和闭包》。
Javascript 相关文章推荐
Javascript实例教程(19) 使用HoTMetal(3)
Dec 23 Javascript
让iframe子窗体取父窗体地址栏参数(querystring)
Oct 13 Javascript
基于jquery的复制网页内容到WORD的实现代码
Feb 16 Javascript
Javascript中设置默认参数值示例
Sep 11 Javascript
JavaScript实现SHA-1加密算法的方法
Mar 11 Javascript
jquery实现简单实用的弹出层效果代码
Oct 15 Javascript
this,this,再次讨论javascript中的this,超全面(经典)
Jan 05 Javascript
基于javascript html5实现3D翻书特效
Mar 14 Javascript
promise和co搭配生成器函数方式解决js代码异步流程的比较
May 25 Javascript
浅谈Angular 观察者模式理解
Nov 01 Javascript
vue中动态select的使用方法示例
Oct 28 Javascript
Vue3配置axios跨域实现过程解析
Nov 25 Vue.js
JavaScript中的作用域链和闭包
Jun 30 #Javascript
JavaScript中的面向对象介绍
Jun 30 #Javascript
js中判断数字\字母\中文的正则表达式 (实例)
Jun 29 #Javascript
JavaScript 学习笔记之一jQuery写法图片等比缩放以及预加载
Jun 28 #Javascript
Fixie.js 自动填充内容的插件
Jun 28 #Javascript
Javascript的各种节点操作实例演示代码
Jun 27 #Javascript
妙用Jquery的val()方法
Jun 27 #Javascript
You might like
最省空间的计数器
2006/10/09 PHP
比较简单实用的PHP无限分类源码分享(思路不错)
2011/10/13 PHP
php实现文件下载更能介绍
2012/11/23 PHP
smarty模板引擎中内建函数if、elseif和else的使用方法
2015/01/22 PHP
Yii数据库缓存实例分析
2016/03/29 PHP
记录一次排查PHP脚本执行卡住的问题
2016/12/27 PHP
js中apply方法的使用详细解析
2013/11/04 Javascript
jquery 鼠标滑动显示详情应用示例
2014/01/24 Javascript
javaScript中push函数用法实例分析
2015/06/08 Javascript
js简单实现表单中点击按钮动态增加输入框数量的方法
2015/08/18 Javascript
基于jquery css3实现点击动画弹出表单源码特效
2015/08/31 Javascript
JavaScript函数节流和函数防抖之间的区别
2017/02/15 Javascript
angular写一个列表的选择全选交互组件的示例
2018/01/22 Javascript
bootstrap下拉分页样式 带跳转页码
2018/12/29 Javascript
通过实例讲解JS如何防抖动
2019/06/15 Javascript
JavaScript面向对象中接口实现方法详解
2019/07/24 Javascript
jQuery实现判断滚动条滚动到document底部的方法分析
2019/08/27 jQuery
JS实现可视化音频效果的实例代码
2020/01/16 Javascript
[42:34]VP vs VG 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python实现备份文件实例
2014/09/16 Python
《Python之禅》中对于Python编程过程中的一些建议
2015/04/03 Python
Python multiprocessing模块中的Pipe管道使用实例
2015/04/11 Python
Python Socket实现简单TCP Server/client功能示例
2017/08/05 Python
python使用PIL模块获取图片像素点的方法
2019/01/08 Python
Python基于Logistic回归建模计算某银行在降低贷款拖欠率的数据示例
2019/01/23 Python
Python timer定时器两种常用方法解析
2020/01/20 Python
python中sys模块是做什么用的
2020/08/16 Python
Html+Css+Jquery实现左侧滑动拉伸导航菜单栏的示例代码
2020/03/17 HTML / CSS
运动会入场解说词
2014/02/07 职场文书
日语专业求职信
2014/07/04 职场文书
放飞理想演讲稿
2014/09/09 职场文书
销售2014年度工作总结
2014/12/08 职场文书
vue3中的组件间通信
2021/03/31 Vue.js
用python批量解压带密码的压缩包
2021/05/31 Python
《辉夜大小姐想让我告白》第三季正式预告
2022/03/20 日漫
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android