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 date对象的减法处理实现代码
Dec 28 Javascript
Javascript实现DIV滚动自动滚动到底部的代码
Mar 01 Javascript
使用jquery局部刷新(jquery.load)从数据库取出数据
Jan 22 Javascript
JS生成不重复随机数组的函数代码
Jun 10 Javascript
javascript实现鼠标移到Image上方时显示文字效果的方法
Aug 07 Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
Feb 24 Javascript
JavaScript之浏览器对象_动力节点Java学院整理
Jul 03 Javascript
原生JS实现的放大镜特效示例【测试可用】
Dec 08 Javascript
基于vue实现一个神奇的动态按钮效果
May 15 Javascript
vue项目从node8.x升级到12.x后的问题解决
Oct 25 Javascript
详解vue高级特性
Jun 09 Javascript
Vue 请求传公共参数的操作
Jul 31 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
QueryPath PHP 中的jQuery
2010/04/11 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十二)
2014/06/25 PHP
PHP中使用Imagick读取pdf并生成png缩略图实例
2015/01/21 PHP
详解WordPress中提醒安装插件以及隐藏插件的功能实现
2015/12/25 PHP
jquery trim() 功能源代码
2011/02/14 Javascript
js获取客户端外网ip的简单实例
2013/11/21 Javascript
深入理解JavaScript系列(38):设计模式之职责链模式详解
2015/03/04 Javascript
超级给力的JavaScript的React框架入门教程
2015/07/02 Javascript
图解JavaScript中的this关键字
2020/05/28 Javascript
jQuery.form插件的使用及跨域异步上传文件
2016/04/27 Javascript
Bootstrap 网站实例之单页营销网站
2016/10/20 Javascript
浅谈AngularJs指令之scope属性详解
2016/10/24 Javascript
微信小程序 地图map详解及简单实例
2017/01/10 Javascript
js实现短信发送倒计时功能(正则验证)
2017/02/10 Javascript
select自定义小三角样式代码(实用总结)
2017/08/18 Javascript
vue组件父子间通信详解(三)
2017/11/07 Javascript
vue 父组件中调用子组件函数的方法
2019/06/06 Javascript
koa2 从入门到精通(小结)
2019/07/23 Javascript
vue实现简单全选和反选功能
2020/09/15 Javascript
Python中用于去除空格的三个函数的使用小结
2015/04/07 Python
解决python3爬虫无法显示中文的问题
2018/04/12 Python
解决Django生产环境无法加载静态文件问题的解决
2019/04/23 Python
Python实现直播推流效果
2019/11/26 Python
Python基础之字符串操作常用函数集合
2020/02/09 Python
django修改models重建数据库的操作
2020/03/31 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
2020/04/10 Python
pycharm激活方法到2099年(激活流程)
2020/09/22 Python
用css3实现转换过渡和动画效果
2020/03/13 HTML / CSS
HTML5中使用postMessage实现两个网页间传递数据
2016/06/22 HTML / CSS
微软瑞士官方网站:Microsoft瑞士
2018/04/20 全球购物
英国标志性生活方式品牌:Skinnydip London
2019/12/15 全球购物
法国亚马逊官方网站:Amazon.fr
2020/12/19 全球购物
学年自我鉴定
2014/01/16 职场文书
2014年国庆节活动总结
2014/08/26 职场文书
养成教育工作总结
2015/08/13 职场文书
叶县这家生产军用电台的兵工厂,人称“四机部”,走出一上将
2022/02/18 无线电