一、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 基础(二)的更多相关文章

  1. 2、JavaScript 基础二 (从零学习JavaScript)

     11.强制转换 强制转换主要指使用Number.String和Boolean三个构造函数,手动将各种类型的值,转换成数字.字符串或者布尔值. 1>Number强制转换 参数为原始类型值的转换规 ...

  2. 刘强1109 JavaScript基础二(分支与循环结构)

    [if-else结构] 1.结构的写法: if(判断条件){ 条件为true时,执行if{} } else{ 条件为false时,执行else{} } 2.注意事项: ① else{}语句块,可以根据 ...

  3. JavaScript 基础(二) - 创建 function 对象的方法, String对象, Array对象

    创建 function 对象的两种方法: 方式一(推荐) function func1(){ alert(123); return 8 } var ret = func1() alert(ret) 方 ...

  4. Javascript基础二(程序的三大结构)

    程序的三大结构: 顺序结构,选择结构,循环结构 程序的单分支结构-if语句:       当条件判断为真true时,执行花括号内的语句,如果条件为假false,跳过花括号内的语句       if(条 ...

  5. javascript基础二数据类型

    1.数据类型 javascript中的基本数据类型有4中,undefined,number,string,boolean 1.1 typeof关键字 typeof关键字可以获取一个变量的的类型.先举个 ...

  6. JavaScript 基础二

    JavaScript 事件处理程序就是一组语句,在事件(如点击鼠标或移动鼠标等)发生时执行 ●当事件之间互相影响时,需要有个先后顺序,这时我们声明一个Bool值来做约束 浏览对象: window 对象 ...

  7. JavaScript 基础(二)数组

    字符串, JavaScript 字符串就是用'' 和""括起来的字符表示. 字符字面量, \n 换行, \t 制表, \b 退格, \r 回车, \f 进纸, \\ 斜杠,\' 单 ...

  8. JavaScript基础二

    1.7 常用内置对象 所谓内置对象就是ECMAScript提供出来的一些对象,我们知道对象都是有相应的属性和方法 1.7.1 数组Array 1.数组的创建方式 字面量方式创建(推荐大家使用这种方式, ...

  9. 1、JavaScript 基础一 (从零学习JavaScript)

    1:定义:javascript是一种弱类型.动态类型.解释型的脚本语言. 弱类型:类型检查不严格,偏向于容忍隐式类型转换. 强类型:类型检查严格,偏向于不容忍隐式类型转换. 动态类型:运行的时候执行类 ...

  10. 基本类型和引用类型的值 [重温JavaScript基础(一)]

    前言: JavaScript 的变量与其他语言的变量有很大区别.JavaScript 变量松散类型的本质,决定了它只是在特定时间用于保存特定值的一个名字而已.由于不存在定义某个变量必须要保存何种数据类 ...

随机推荐

  1. C#项目打包后安装的桌面快捷方式图标怎么设置成自己想要的图标

    #项目打包后安装的桌面快捷方式图标怎么设置成自己想要的图标 2012-08-25 09:11匿名 | 浏览 3286 次  C#编程 C#项目用vs2005自带的工具打包后安装的桌面快捷方式图标怎么设 ...

  2. robotframework笔记7

    内部资源 *** Settings *** Library BuiltIn 外部资源 *** Settings *** Library com.mycompany.myproject.MyLib WI ...

  3. BeautifulSoup 常用方法

    #输出所得标签的‘’属性值 获取 head里面的第一个meta的content值 soup.head.meta['content'] 获取第一个span的内容 soup.span.string 获取第 ...

  4. 部门树形结构,使用Treeview控件显示部门

    部门树形结构.设计张部门表用于存储部门编码.名称.上级部门id,使用Treeview控件显示部门树,并实现部门增删改.移动.折叠等功能.特别提示,部门有层级关系,可用donetbar的adtree控件 ...

  5. python读取指定内存的内容

    import ctypes as ct t = ct.string_at(0x211000, 20) # (addr, size) print t 最好不要用解释性语言来开发底层,一般用C.

  6. 聚类算法:ISODATA算法

    1. 与K-均值算法的比较 –K-均值算法通常适合于分类数目已知的聚类,而ISODATA算法则更加灵活: –从算法角度看, ISODATA算法与K-均值算法相似,聚类中心都是通过样本均值的迭代运算来决 ...

  7. C#语言基础——7月21日

    C#语言基础 一.语言基础 (一).函数的四要素:      名称,输入,输出,加工(二).主函数.输出语句.输入语句:     Static void Main(string[] args)//下划 ...

  8. B+树索引和哈希索引的区别——我在想全文搜索引擎为啥不用hash索引而非得使用B+呢?

    哈希文件也称为散列文件,是利用哈希存储方式组织的文件,亦称为直接存取文件.它类似于哈希表,即根据文件中关键字的特点,设计一个哈希函数和处理冲突的方法,将记录哈希到存储设备上. 在哈希文件中,是使用一个 ...

  9. extjs DateField 的值用getValue()方法获取后是一大堆字符串,类似Tue Dec 07 2010 00:00:00 GMT 0800,这玩意存入数据库实在不好办。。。

    extjs DateField 的值用getValue()方法获取后是一大堆字符串,类似Tue Dec 07 2010 00:00:00 GMT 0800,这玩意存入数据库实在不好办...所以要把它格 ...

  10. 使用Lucene.Net管理索引实现搜索

    之前使用一直是没有问题的,只到今天发现删除的时候无法删除,增加的时候却一直在增加,导致搜索的时候可以搜出来很多相同的结果. 小猪决定趁今天这个机会好好的把这个问题给解决了. private void ...