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 相关文章推荐
xml转json的js代码
Aug 28 Javascript
深入理解javascript的执行顺序
Apr 04 Javascript
JS常用函数使用指南
Nov 23 Javascript
jQuery实现文本框邮箱输入自动补全效果
Nov 17 Javascript
完美实现bootstrap分页查询
Dec 09 Javascript
纯javaScript、jQuery实现个性化图片轮播【推荐】
Jan 08 Javascript
js a标签点击事件
Mar 30 Javascript
关于vue单文件中引用路径的处理方法
Jan 08 Javascript
Vue 实现拖动滑块验证功能(只有css+js没有后台验证步骤)
Aug 24 Javascript
node.js连接mysql与基本用法示例
Jan 05 Javascript
通过js给网页加上水印背景实例
Jun 17 Javascript
vue简单封装axios插件和接口的统一管理操作示例
Feb 02 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的explode和implode的使用说明
2011/07/17 PHP
ThinkPHP CURD方法之where方法详解
2014/06/18 PHP
基于PHP实现等比压缩图片大小
2016/03/04 PHP
PHP MVC框架中类的自动加载机制实例分析
2019/09/18 PHP
jquery插件之easing使用
2010/08/19 Javascript
Javascript 异步加载详解(浏览器在javascript的加载方式)
2012/05/20 Javascript
JavaScript改变HTML元素的样式改变CSS及元素属性
2013/11/12 Javascript
JavaScript设计模式学习之“类式继承”
2015/03/12 Javascript
js限制input标签中只能输入中文
2015/06/26 Javascript
javascript深拷贝(deepClone)详解
2016/08/24 Javascript
jQuery和JavaScript节点插入元素的方法对比
2016/11/18 Javascript
详解Js模板引擎(TrimPath)
2016/11/22 Javascript
js生成随机数方法和实例
2017/01/17 Javascript
php 解压zip压缩包内容到指定目录的实例
2018/01/23 Javascript
JS简单生成由字母数字组合随机字符串示例
2018/05/25 Javascript
JavaScript中将值转换为字符串的五种方法总结
2019/06/06 Javascript
Weex开发之WEEX-EROS开发踩坑(小结)
2019/10/16 Javascript
python抓取京东商城手机列表url实例代码
2013/12/18 Python
python利用datetime模块计算时间差
2015/08/04 Python
python迭代dict的key和value的方法
2018/07/06 Python
Python安装与基本数据类型教程详解
2019/05/29 Python
Python实现新型冠状病毒传播模型及预测代码实例
2020/02/05 Python
Python装饰器实现方法及应用场景详解
2020/03/26 Python
美国内衣第一品牌:Hanes(恒适)
2016/07/29 全球购物
C#中类(class)与结构(struct)的异同
2013/11/03 面试题
2014年迎新年活动方案
2014/02/19 职场文书
廉洁家庭事迹材料
2014/05/15 职场文书
视光学专业自荐信
2014/06/24 职场文书
高中美术教师事迹材料
2014/08/22 职场文书
员工规章制度范本
2015/08/07 职场文书
小学大队委竞选口号
2015/12/25 职场文书
2019年学校消防安全责任书(2篇)
2019/10/09 职场文书
python源码剖析之PyObject详解
2021/05/18 Python
python中super()函数的理解与基本使用
2021/08/30 Python
关于python爬虫应用urllib库作用分析
2021/09/04 Python
Python数据可视化之Seaborn的安装及使用
2022/04/19 Python