码迷,mamicode.com
首页 > Web开发 > 详细

JS随笔3

时间:2016-09-05 10:31:34      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:

上次我写到了运算符中的“算术运算符”,接下来我继续往下走:

好,在算术运算符中中我们发现了一个问题,就是浮点数相加后,小数点后的几位问题,该如何解决了?

var result =  0.1 + 0.2;
            // 保留两位小数点
            console.log( result.toFixed(2) );

PS:当处理财务或科学数据的时候,在做数字到字符串的转换过程中,你期望自己控制输出中小数点位置和有效数字位数,或者决定是否需要指数计数法。number类为这种数字到字符串的类型转换场景定义了三个方法。

1:toFixed()根据小数点后的指定位数将数字转为字符串,它从不用指数计数法;

2:toExponential()使用指数计数法将数字转换成指数形式的字符串,其中小数点前只有一位,小数点后的位数则由参数指定(也就是说有效数字位数比指定的位数要多一位);

 3:toPrecision()根据指定的有效数字位数将数字转换成字符串。如果有效数字小于数字整数部分的位数,则转换成指数形式。

var  n = 123456.789;
n.toFixed(0);//"123457"
n.toFixed(2);//"123456.79"
n.toFixed(5);//"123456.78900"

n.toExponential(1);//"1.2e+5"
n.toExponential(3);//"1.235e+5"

n.toPrecision(4);//"1.235e+5"
n.toPrecision(7);//"123456e.8"
n.toPrecision(10);//"23456.7890"

 注:以上PS来自盛森分

 

 

2. 后增量/后减量运算符 ++ ,--

以++为例:

var i = 0;

            // 写法一:
            i = i + 1;
            console.log("第1个i的值是:" + i);

            // 写法二:
            i++;
            console.log("第2个i的值是:" + i);

            // 写法三:
            ++i;
            console.log("第3个i的值是:" + i);

            // 前++、后++
            var i = 0,
                j = i++; // 先赋值后运算
            console.log(j);

            var i = 0,
                j = ++i; // 先运算后赋值
            console.log(j);
            
            // 累加10
            var i = 0;
            i+=10; // i = i + 10
            console.log(i);

 

PS:关于先运算还是先赋值我们可以这样:

var i =1,
      j =i++;
//我们可以把上面的步骤这样理解:
//  j=i   
//  i++


var i =1,
      j =++i;
// i++
//j=i

 

 3. 比较运算符 ( >, <, >=, <=, ==, !=,===,!== )

前面四个就不多说了,大伙都懂,说说后面四个:

==在JS里表示等于,因为=在JS里是赋值的意思;

!==不等于

===全等于,全等于和等于的区别是,全等于包括类型

!==不全等

// 第一题
    var price1=100,
        price2=200;
        document.write(第一题的值是:+(price1 > price2)+<br/>);

        // 第二题
    var price1=200,
        price2=100;
        document.write(第二题的值是:+(price1 < price2) + <br/>);

        // 第三题
    var price1=1199.00,
        price2=1200.00;
        document.write(第三题的值是:+(price1 >= price2)+<br/>);

        // 第四题
    var price1=999,
        price2=1999;
        document.write(第四题的值是:+(price1 <= price2)+<br/>);

        // 第五题
    var number1=0,
        string1="";
        document.write(第五题的值是:+(number1 == string1)+<br/>);

        // 第六题
    var number1=0,
        boolean1=false;
        document.write(第六题的值是:+(number1 != boolean1)+<br/>);


            // 第七题
    var number1=0,
        boolean1=false;
        document.write(第七题的值是:+(number1 === boolean1)+<br/>);

            // 第八题
    var boolean1=true,
        boolean2=true;
        document.write(第八题的值是:+(boolean1 !== boolean2)+<br/>);

 

PS:有点意思的是:

 var num1 = 0,
            string1 = ""; // 空字符串
            console.log( num1 == string1 ); // 0 => false ""=>false
            // 对比数据类型和值 => false | true
            console.log( num1 === string1 ); // 0 => false ""=>false
            console.log( num1 !== string1 );

 

 试试你就知道

 


4.逻辑运算符( &&, || , !)

&& : 逻辑与 (都为真才是真)
|| : 逻辑或    (有一个真就是真)
! :逻辑非   (“不”的意思)

//第一题
     var num1=10,
         num2=20;
         document.write(第一题的值是:+(num1 > 5 && num2 < 20)+<br/>);

    //第二题
     var num1=33,
         num2=34;
         document.write(第二题的值是:+(num1 == 33 || num2 > 20)+<br/>);

    //第三题
     var boolean1=false,
         boolean2=true;
         document.write(第三题的值是:+(boolean1 || !boolean2)+<br/>);

 

 

 

六、程序流程控制

1、条件语句 if

var score =55;
            if(  score >= 80 ){
                alert("成绩优异");
            }else if( score >= 60 ){
                alert("成绩合格");
            }else{
                alert("成绩不合格");
            }
//else 是其他情况的意思

 

 

2、switch语句

var i = 123;
            switch(i) {
                case 25:
                    alert("i的值是25");
                    break;
                case 100:
                    alert("i的值是100");
                    break;
                default:
                    alert("i的值是未知的");
            }
var i=B;//注意类型哦,字符串的话记得加引号
    switch(i){
        case A:
        alert("你已订购A套餐");
        break;
        case B:
        alert("你已订购B套餐");
        break;
        case C:
        alert("你已订购C套餐");
        break;
        case D:
        alert("你已订购D套餐");
        break;
        default:
        alert("欢迎下次再来");
        break;
    }

 

PS:break的意思是中断,如果不加,就会继续执行下个语句。

 

 

 

PS:好习惯从一开始抓起,记得写  ;  哦!

 

JS随笔3

标签:

原文地址:http://www.cnblogs.com/qq1193447294/p/5841307.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!