当前位置: 首页 > 图文教程 > 网络编程 > Javascript > Javascript入门学习第三篇 js运算

Javascript
将HTML自动转为JS代码
一端时间轮换的广告
制作特殊字的脚本
美化下拉列表
文字幻灯片
判断是否输入完毕再激活提交按钮
JS控制表格隔行变色
左右两侧的广告代码 简单
父窗口获取弹出子窗口文本框的值
网页的标准,IMG不支持onload标签怎么办
一个很简单的办法实现TD的加亮效果.
文本框栏目介绍
自动检查并替换文本框内的字符
会自动逐行上升的文本框
列表内容的选择
对textarea框的代码调试,而且功能上使用非常方便,酷
提高代码性能技巧谈—以创建千行表格为例
Javascript的IE和Firefox兼容性汇编
让插入到 innerHTML 中的 script 跑起来
DEFER怎么用?

Javascript入门学习第三篇 js运算


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 144 ::
收藏到网摘: n/a

上篇文章讲了js中的传值和传址 和 函数的作用域. 这章我们来探讨js中的变量,表达式,和运算符 还有一些 js 语句。 升级中…… 1, 表达式:
最简单的表达式:直接量或者变量名。var a =1;
直接量表达式的值:本身。
变量表达式的值:该变量所存放或引用的值。
2 , 运算符:
一元运算符: 比如 - 3
二元运算符: 比如 3+4
三元运算符: 比如 ? :
新手常遇到的问题:
递增运算符:
比如:
i = 1 ;
j = ++ i ; // 前递增运算,即先对运算数进行递增,然后再去计算。
//输出 i =2; j=2 ;
i = 1 ;
j = i ++; // 后递增运算,即先去计算,然后再对运算数进行递增。
//输出 i =2; j=1 ;
3, 相等运算符:
= : 赋值运算符;
== : 相等运算符;
=== : 等同运算符;
值NaN永远不会与任何值相等,包括自己。
alert(NaN == NaN); //false NaN 意思为 Not a Number
要检测一个值是否是NaN,可以使用全局函数isNaN();
另外新手要注意:
var a =[1,2,3];
var b =[1,2,3];
document.write(a==b); // 输出false .(这个其实是 第一章讲的内容。)
// 虽然值相同,类型相同,但址不同。
--------------------------------------------------------
var a =[1,2,3];
var b = a ;
var c = a ;
document.write(b===c);//输出true;
--------------------------------------------------------
var a = "1";
var b = true ;
document.write(a==b); //输出 true
document.write(a===b); //输出 false ; 值相同, 类型不同
4, 比较运算符:
要注意的就是字符串是进行琢个比较。
而且会区分大小写。
如果你的需求是不区分大小写:
可以使用 String.toLowerCase() //纯小写
String.toUpperCase() //纯大写 转换后 ,然后再去比较.
5, in 运算符:
要注意的是:左边的值是其右边对象的属性。
比如:
var a = { x : 1 , y : 2 };
var b = “x” in a ; // true
var c = “toString” in a ; // true . 左边的值是其右边对象的属性。
6 instanceof 运算符:
要注意的是:左边的运算数是一个对象,右边的运算数是对象类的名字。
比如:
var a = new Date()
a instanceof Date; // true
a instanceof Object ; // true
a instanceof Number ; // false
7, 3元条件运算符:
要注意的是:第一个运算数必须是一个布尔值。
X > 0 ? 3 : 2 ;
上篇文章讲了js中的传值和传址 和 函数的作用域. 这章我们来探讨js中的变量,表达式,和运算符 还有一些 js 语句。 升级中……
8, typeof运算符:
要注意的是:由于typeof对所有的对象和数组都是返回 object;
所以它只能区分对象和原始数据类型时才有用。
要区别一种对象类型和另一种对象类型,可以使用 instanceof 和 constructor 属性。
9, delete运算符:
要注意的是:并不是所有的属性和变量都能删除。
比如:
用var 语句声明的变量不能被删除。
另外;当delete删除一个不存在的属性时,返回true;(^_^,这个比较搞笑。)
var a = 1;
alert( delete a ); //返回 false
alert( delete a.x ); //返回 true
还有一个应该注意:
Delete 所能影响的只是属性值,并不能影响被这些属性引用的对象。
比如:
var my =new Object();
my.height = new Date();
my.width = my.height;
delete my.height ;
document.write(my.width);// my.width仍然是引用Date对象
10,void运算符:
void的一个用途: 专门生成undefined值、
alert( void(0) )
alert( void(1) ) //都输出 undefined
这里的undefined实际是 void()运算后的值。
考虑到向后兼容性,用表达式void 0 比使用 undefined属性更有用.
11,异常处理:
抛出异常: throw
捕捉异常:try / catch / finally
If(x>0)
throw new Error(“x must not be negative!”);

try{
}
catch(e){
}
finally{ //总是被最后执行 。通常进行 消除操作。
}
12,with语句:
var form = frame[1].document.forms[0];
form.name.value = “ “;
form.address.value =” “;
这样可以使用with语句代替;
比如:
with(frame[1].document.forms[0]){
name.value = “ “;
address.value =” “;

当然书上强烈不推荐使用with, 呵呵。效率低,问题多多。
总结:
主要介绍了js中的变量,表达式,和运算符 还有一些 js 语句。
如果还有不懂,可以google 搜索资料. (学会使用搜索,你也就很厉害了。)
或者联系我 ,可以去我的blog 给我留言 :
http://www.cssrain.cn/LoadMod.asp?plugins=GuestBookForPJBlog
转眼间,学了3章了, 不知道大家感觉如何。
将就些吧,学习最重要的还是靠自己,不懂或者有疑问的地方马上 写例子测试,验证。或者查资料。 这样可能印象会更深入些。
加油…….