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 相关文章推荐
原生js实现shift/ctrl/alt按键的获取
Apr 08 Javascript
javascript去除字符串左右两端的空格
Feb 05 Javascript
JQuery中extend的用法实例分析
Feb 08 Javascript
javascript常用正则表达式汇总
Jul 31 Javascript
javascript实现2016新年版日历
Jan 25 Javascript
使用Jasmine和Karma对AngularJS页面程序进行测试
Mar 05 Javascript
jQuery插件ajaxfileupload.js实现上传文件
Oct 23 Javascript
jQuery简单实现iframe的高度根据页面内容自适应的方法
Aug 01 Javascript
Angular.JS中的this指向详解
May 17 Javascript
DVA框架统一处理所有页面的loading状态
Aug 25 Javascript
Vue动态加载异步组件的方法
Nov 21 Javascript
JavaScript遍历查找数组中最大值与最小值的方法示例
May 24 Javascript
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
PHP中获取文件扩展名的N种方法小结
2012/02/27 PHP
php中return的用法实例分析
2015/02/28 PHP
php字符串的替换,分割和连接方法
2016/05/23 PHP
修改Laravel5.3中的路由文件与路径
2016/08/10 PHP
jQuery UI Datepicker length为空或不是对象错误的解决方法
2010/12/19 Javascript
Jquery Ajax请求代码(2)
2011/01/07 Javascript
js DOM的学习笔记
2011/12/22 Javascript
简略说明Javascript中的= =(等于)与= = =(全等于)区别
2013/04/16 Javascript
JS实现网页标题栏显示当前时间和日期的完整代码
2015/11/02 Javascript
jQuery-1.9.1源码分析系列(十)事件系统之事件包装
2015/11/20 Javascript
HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
2015/11/25 Javascript
Vuejs第十一篇组件之slot内容分发实例详解
2016/09/09 Javascript
js实现类bootstrap模态框动画
2017/02/07 Javascript
详解Vue学习笔记入门篇之组件的内容分发(slot)
2017/07/17 Javascript
学习RxJS之JavaScript框架Cycle.js
2019/06/17 Javascript
python分割文件的常用方法
2014/11/01 Python
Python装饰器的函数式编程详解
2015/02/27 Python
OpenCV2.3.1+Python2.7.3+Numpy等的配置解析
2018/01/05 Python
pyspark 读取csv文件创建DataFrame的两种方法
2018/06/07 Python
python使用turtle库绘制时钟
2020/03/25 Python
python面向对象入门教程之从代码复用开始(一)
2018/12/11 Python
Python3爬虫RedisDump的安装步骤
2021/02/20 Python
html5新增的属性和废除的属性简要概述
2013/02/20 HTML / CSS
英国最大的高品质珠宝和手表专家:Goldsmiths
2017/03/11 全球购物
意大利高端时尚买手店:Stefania Mode
2018/03/01 全球购物
北京天润融通.net面试题笔试题
2012/02/20 面试题
研究生毕业自我鉴定范文
2014/03/27 职场文书
党的群众路线教育实践活动总结报告
2014/07/03 职场文书
三好学生事迹材料
2014/12/24 职场文书
面试通知短信
2015/04/20 职场文书
外出培训学习心得体会
2016/01/18 职场文书
公司要求试用期员工提交“述职报告”,该怎么写?
2019/07/17 职场文书
2019七夕节祝福语36句,快来收藏吧
2019/08/06 职场文书
Python中如何处理常见报错
2022/01/18 Python
唤醒紫霞仙子,携手再游三界!大话手游X《大话西游》电影合作专属剧情任务
2022/04/03 其他游戏
python神经网络学习 使用Keras进行回归运算
2022/05/04 Python