Javascript 基础(二)
一、js运算符:
+、-、*、/、%
%(去模 就是计算两个数的余数,通常判断是否能整除),主要用于整数。
var a=90;
var b=8;
if(a%b==0)
window.alert("能整除");
else
window.alert("不能整除");
b=b+"";//b是string
二、逻辑运算符
&&、||、!
注意:在逻辑运算中,0,"",false,null,undefine,NaN表示false
!表示非 取反
var a =0;
if(!a)
window.alert("ok");
|| 将返回第一个不为false的那个值(对象也可以),或者是返回最后一个值)如果全部都为false的 话)
|| 返回值不一定是布尔值,也可以返回对象
var a =2;
var b =0;
var c =b||a;
window.alert(c); //输出2 var a = true;
var b = false;
var c = a||b;
window.alert(c); var a = false;
var b = false;
var d = 0;
var c =b||a||d;
window.alert(c); var a=0;
var b="";
var d=false;
var obj = new Object();
var c=a||d||b||obj;
window.alert(c);//输出 类型 Object
三、位运算和移位运算
js也有位运算和移位运算,其规范和Java一致。
var a = 4>>2;结果是1
var a = -4>>2;结果是-1
//4 二进制 0000 0100 向右移动2位 0000 0001
//-4 原码 10000000 00000100 ->11111111 11111011(取反+1) -> 11111111 1111100(补码,向右移
动2位)-> 11111111 11111(取反码 -1)-> 11111111 11111110(取反)->10000000 00000001
window.alert(a);
if(sex=="男")
window.alert("上男厕所");
else if(sex=="女")
window.alert("上女厕所");
else if(sex=="女")
window.alert("ok"); //这句不会执行
else
window.alert("不上厕所");
强调:一旦找到一个满足条件的入口,执行完毕后,就直接结束这个多分支语句
var a=890;
//var a=null;
//var obj = new Object();
//var a =new Object(); switch(a){
case 890:
window.alert("890");
//break; //跳出整个switch
case 90:
window.alert("90");
break;
case null;
window.alert("null");
break;
case a:
window.alert("a");
break;
default:
window.alert("没有匹配值");
break;
}
针对该案我们得出:
(1) js的switch语句类型可以是js支持的任何类型(数组和对象除外);
(2) case 后面的数据类型可以任意(数组和对象除外);
(3) break 作用是跳出整个switch
var flag =1;
switch(flag)
{
default:
window.alert("默认");
case 'a':
window.alert("今天星期一");
case 'b':
window.alert("今天星期二");
} var flag =1.1;
switch(flag)
{
default:
window.alert("默认");
case 'a':
window.alert("今天星期一");
case 'b':
window.alert("今天星期二");
case 1.1:
window.alert("1.1");
}
var n=window.prompt('请输入一个整数');
n=parseInt(n);
var res=0;
for(var i=0;i<=n;i++){
res+=i;
}
document.writeln("结果是"+res);
var res2=0;
var temp=1;
for(var i=1;i<=n;i++){
for(var j=1;j<=i;j++){
temp*=j;
}
res2+=temp;
temp=1;
}
document.writeln("第二个结果是"+res2);
四、JS调试方法
4.1 在IE8中调试
在IE8中,我么可以通过工具对js代码进行调试,尤其页面比较复杂的情况下非常有用。
请注意:首先要在IE-工具-internet选项-高级中取消 “禁止脚本调试”
打开“工具”里面有个“开发人员工具”
4.2 IE6以下浏览器安装Microsoft 脚本编辑器进行JS调试,在Javascript代码中输入debuger++。
4.3 火狐js调试FireBug,下载FireBug工具。
Javascript 基础(二)的更多相关文章
- 2、JavaScript 基础二 (从零学习JavaScript)
11.强制转换 强制转换主要指使用Number.String和Boolean三个构造函数,手动将各种类型的值,转换成数字.字符串或者布尔值. 1>Number强制转换 参数为原始类型值的转换规 ...
- 刘强1109 JavaScript基础二(分支与循环结构)
[if-else结构] 1.结构的写法: if(判断条件){ 条件为true时,执行if{} } else{ 条件为false时,执行else{} } 2.注意事项: ① else{}语句块,可以根据 ...
- JavaScript 基础(二) - 创建 function 对象的方法, String对象, Array对象
创建 function 对象的两种方法: 方式一(推荐) function func1(){ alert(123); return 8 } var ret = func1() alert(ret) 方 ...
- Javascript基础二(程序的三大结构)
程序的三大结构: 顺序结构,选择结构,循环结构 程序的单分支结构-if语句: 当条件判断为真true时,执行花括号内的语句,如果条件为假false,跳过花括号内的语句 if(条 ...
- javascript基础二数据类型
1.数据类型 javascript中的基本数据类型有4中,undefined,number,string,boolean 1.1 typeof关键字 typeof关键字可以获取一个变量的的类型.先举个 ...
- JavaScript 基础二
JavaScript 事件处理程序就是一组语句,在事件(如点击鼠标或移动鼠标等)发生时执行 ●当事件之间互相影响时,需要有个先后顺序,这时我们声明一个Bool值来做约束 浏览对象: window 对象 ...
- JavaScript 基础(二)数组
字符串, JavaScript 字符串就是用'' 和""括起来的字符表示. 字符字面量, \n 换行, \t 制表, \b 退格, \r 回车, \f 进纸, \\ 斜杠,\' 单 ...
- JavaScript基础二
1.7 常用内置对象 所谓内置对象就是ECMAScript提供出来的一些对象,我们知道对象都是有相应的属性和方法 1.7.1 数组Array 1.数组的创建方式 字面量方式创建(推荐大家使用这种方式, ...
- 1、JavaScript 基础一 (从零学习JavaScript)
1:定义:javascript是一种弱类型.动态类型.解释型的脚本语言. 弱类型:类型检查不严格,偏向于容忍隐式类型转换. 强类型:类型检查严格,偏向于不容忍隐式类型转换. 动态类型:运行的时候执行类 ...
- 基本类型和引用类型的值 [重温JavaScript基础(一)]
前言: JavaScript 的变量与其他语言的变量有很大区别.JavaScript 变量松散类型的本质,决定了它只是在特定时间用于保存特定值的一个名字而已.由于不存在定义某个变量必须要保存何种数据类 ...
随机推荐
- C#项目打包后安装的桌面快捷方式图标怎么设置成自己想要的图标
#项目打包后安装的桌面快捷方式图标怎么设置成自己想要的图标 2012-08-25 09:11匿名 | 浏览 3286 次 C#编程 C#项目用vs2005自带的工具打包后安装的桌面快捷方式图标怎么设 ...
- robotframework笔记7
内部资源 *** Settings *** Library BuiltIn 外部资源 *** Settings *** Library com.mycompany.myproject.MyLib WI ...
- BeautifulSoup 常用方法
#输出所得标签的‘’属性值 获取 head里面的第一个meta的content值 soup.head.meta['content'] 获取第一个span的内容 soup.span.string 获取第 ...
- 部门树形结构,使用Treeview控件显示部门
部门树形结构.设计张部门表用于存储部门编码.名称.上级部门id,使用Treeview控件显示部门树,并实现部门增删改.移动.折叠等功能.特别提示,部门有层级关系,可用donetbar的adtree控件 ...
- python读取指定内存的内容
import ctypes as ct t = ct.string_at(0x211000, 20) # (addr, size) print t 最好不要用解释性语言来开发底层,一般用C.
- 聚类算法:ISODATA算法
1. 与K-均值算法的比较 –K-均值算法通常适合于分类数目已知的聚类,而ISODATA算法则更加灵活: –从算法角度看, ISODATA算法与K-均值算法相似,聚类中心都是通过样本均值的迭代运算来决 ...
- C#语言基础——7月21日
C#语言基础 一.语言基础 (一).函数的四要素: 名称,输入,输出,加工(二).主函数.输出语句.输入语句: Static void Main(string[] args)//下划 ...
- B+树索引和哈希索引的区别——我在想全文搜索引擎为啥不用hash索引而非得使用B+呢?
哈希文件也称为散列文件,是利用哈希存储方式组织的文件,亦称为直接存取文件.它类似于哈希表,即根据文件中关键字的特点,设计一个哈希函数和处理冲突的方法,将记录哈希到存储设备上. 在哈希文件中,是使用一个 ...
- extjs DateField 的值用getValue()方法获取后是一大堆字符串,类似Tue Dec 07 2010 00:00:00 GMT 0800,这玩意存入数据库实在不好办。。。
extjs DateField 的值用getValue()方法获取后是一大堆字符串,类似Tue Dec 07 2010 00:00:00 GMT 0800,这玩意存入数据库实在不好办...所以要把它格 ...
- 使用Lucene.Net管理索引实现搜索
之前使用一直是没有问题的,只到今天发现删除的时候无法删除,增加的时候却一直在增加,导致搜索的时候可以搜出来很多相同的结果. 小猪决定趁今天这个机会好好的把这个问题给解决了. private void ...