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文件的函数代码分享
Jul 28 Javascript
javascript作用域和闭包使用详解
Apr 25 Javascript
JS实现仿雅虎首页快捷登录入口及导航模块效果
Sep 19 Javascript
全面解析Bootstrap表单使用方法(表单按钮)
Nov 24 Javascript
javascript常用的设计模式
Feb 09 Javascript
JS仿JQuery选择器功能
Mar 08 Javascript
轻松理解JavaScript闭包
Mar 14 Javascript
js传递数组参数到后台controller的方法
Mar 29 Javascript
浅谈redux以及react-redux简单实现
Aug 28 Javascript
vue-better-scroll 的使用实例代码详解
Dec 03 Javascript
javascript判断一个变量是数组还是对象
Apr 10 Javascript
Vue 自定义指令功能完整实例
Sep 17 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中照片旋转 (orientation) 问题的正确处理
2017/02/16 PHP
PHP基于面向对象实现的留言本功能实例
2018/04/04 PHP
PHP实现的AES双向加密解密功能示例【128位】
2018/09/03 PHP
phpstorm最新激活码分享亲测phpstorm2020.2.3版可用
2020/11/22 PHP
php的lavarel框架中join和orWhere的用法
2020/12/28 PHP
彻底搞懂JS无缝滚动代码
2007/01/03 Javascript
js下通过getList函数实现分页效果的代码
2010/09/17 Javascript
Knockoutjs快速入门(经典)
2012/12/24 Javascript
javascript实现iframe框架延时加载的方法
2014/10/30 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
2015/05/11 Javascript
JS基于myFocus库实现各种功能的tab选项卡切换效果
2015/09/19 Javascript
纯javascript移动优先的幻灯片效果
2015/11/02 Javascript
js循环map 获取所有的key和value的实现代码(json)
2018/05/09 Javascript
Bootstrap table表格初始化表格数据的方法
2018/07/25 Javascript
详解ECMAScript typeof用法
2018/07/25 Javascript
用Vue编写抽象组件的方法
2019/05/06 Javascript
layui导出所有数据的例子
2019/09/10 Javascript
javascript 设计模式之享元模式原理与应用详解
2020/04/08 Javascript
[16:43]Heroes19_剃刀(完美)
2014/10/31 DOTA
在Python程序和Flask框架中使用SQLAlchemy的教程
2016/06/06 Python
python如何读写csv数据
2018/03/21 Python
使用11行Python代码盗取了室友的U盘内容
2018/10/23 Python
python感知机实现代码
2019/01/18 Python
Python 实现大整数乘法算法的示例代码
2019/09/17 Python
pycharm下pyqt4安装及环境配置的教程
2020/04/24 Python
Python 程序报错崩溃后如何倒回到崩溃的位置(推荐)
2020/06/23 Python
伦敦时尚生活的缩影:LN-CC
2017/01/24 全球购物
日本小田急百货官网:Odakyu
2018/07/19 全球购物
品质主管的岗位职责
2013/12/04 职场文书
银行资信证明
2015/06/17 职场文书
2015高中教师个人工作总结
2015/07/21 职场文书
pytest进阶教程之fixture函数详解
2021/03/29 Python
python 通过使用Yolact训练数据集
2021/04/06 Python
css 中多种边框的实现小窍门
2021/04/07 HTML / CSS
手写Spirit防抖函数underscore和节流函数lodash
2022/03/22 Javascript
vue实现在data里引入相对路径
2022/06/05 Vue.js