zoukankan      html  css  js  c++  java
  • js基础

     

    浏览器弹出警告框:alert("xxxxxxxxxx");

    在页面输出内容:document.write("xxxxxx");

    向控制台写内容:console.log("xxxxxxxxxx");

     

    可以将js代码写到a标签的href属性中

    <a href="javascript:alert('内容');">点击</a>
    <a href="javascript:;">点击</a>    

    结构和行为耦合,不方便维护,可以将js代码卸载script标签中或者单独的js文件中,利用缓存机制提高用户体验

     

    字面量:都是一些不可改变的值,字面可以直接使用,但是一般不直接使用字面量

    变量:用来保存字面量,变量是可以随意更改的

     

    js中一共有六种数据类型:String  Number Boolean Null Undefined  Object, object是引用数据类型,其他都是基本数据类型

    js中表示的最大值:Number.MAX_VALUE、最小值:Number.MIN_VALUE

    大于最大值:Infinity 无穷大   小于最小值: -Infinity,使用typeof检查infinity也会返回Number

    NaN:使用一个特殊的数字

     

     Null(空值)类型的值只有一个,就是null
            * 	null这个值专门用来表示一个为空的对象
    	* 	使用typeof检查一个null值时,会返回object
    
    * Undefined(未定义)类型的值只有一个,就undefind
    	* 	当声明一个变量,但是并不给变量赋值时,它的值就是undefined
    	* 	使用typeof检查一个undefined时也会返回undefined     
    

      

    将其他类型转换成String

    调用被转换类型的toString()方法,null和undefined调用toString()会报错

    调用String()函数,将要被转化的数据传入,null转换成"null", undefined转换成"undefined"

    其他数据类型转换成Number

    1、调用Number方法

      字符串  ---  数字,如果是非数字内容,则转换成NaN,如果字符串是一个空字符串或者全是空格的字符串,则转换0

      布尔  ----   数字 , true:1    false:0

      null   ---   数字    0

      undefined -- 数字    NaN

    2、调用专门的方式

      parseInt(),把一个字符串转换成一个整数。 将一个字符串的有效整数取出来, 如果非String类型调用这个方法,会先将器转换成String类型,然后再进行操作

    可以在parseInt()的第二个参数指定数字的进制

      parseFloat(),字符串到整数

    其他的数据转换成boolean

    1、使用Boolean()函数:

      除了0和NaN,其余的都是true,除了空串,其余的都是true,null和undefined转换成false,对象会被转换成true

    <script type="text/javascript">
                /*
                 *     编写程序,由键盘输入三个整数分别存入变量num1、num2、num3,
                 *     对他们进行排序,并且从小到大输出。
                 */
                
                //获取用户输入的三个数
                /*
                 * prompt()函数的返回值是String类型的
                 */
                var num1 = prompt("请输入第一个数:");
                var num2 = prompt("请输入第二个数:");
                var num3 = prompt("请输入第三个数:");
                
                
                //找到三个数中最小的数
                if(num1 < num2 && num1 < num3){
                    //num1最小,比较num2和num3
                    if(num2 < num3){
                        //num1 num2 num3
                        alert(num1 +","+num2 + ","+num3);
                    }else{
                        //num1 num3 num2
                        alert(num1 +","+num3 + ","+num2);
                    }
                    
                }else if(num2 < num1 && num2 < num3){
                    //num2最小,比较num1和num3
                    if(num1 < num3){
                        //num2 num1 num3
                        alert(num2 +","+num1 + ","+num3);
                    }else{
                        //num2 num3 num1
                        alert(num2 +","+num3 + ","+num1);
                    }
                    
                }else{
                    //num3最小,比较num1和num2
                    if(num1 < num2){
                        // num3 num1 num2
                        alert(num3 +","+num1 + ","+num2);
                    }else{
                        //num3 num2 num1
                        alert(num3 +","+num2 + ","+num1);
                    }
                    
                }
                
                
            </script>
    <script type="text/javascript">
                
                /*
                 * 水仙花数是指一个3位数,它的每个位上的数字的3 次幂之和等于它本身。
                    (例如:1^3 + 5^3 + 3^3 = 153),请打印所有的水仙花数。
                 */
                
                //打印所有的三位数
                for(var i=100 ; i<1000 ; i++){
                    
                    //获取i的百位 十位 个位的数字
                    //获取百位数字
                    var bai = parseInt(i/100);
                    
                    //获取十位的数字
                    var shi = parseInt((i-bai*100)/10);
                    
                    //获取个位数字
                    var ge = i % 10;
                    
                    //判断i是否是水仙花数
                    if(bai*bai*bai + shi*shi*shi + ge*ge*ge == i){
                        console.log(i);
                    }
                    
                    
                }
                
                
            </script>
    <script type="text/javascript">
                /*
                 * 在页面中接收一个用户输入的数字,并判断该数是否是质数。
                    质数:只能被1和它自身整除的数,1不是质数也不是合数,质数必须是大于1的自然数。    
                 */
                
                var num = prompt("请输入一个大于1的整数:");
                
                
                //判断这个值是否合法
                if(num <= 1){
                    alert("该值不合法!");
                }else{
                    
                    //创建一个变量来保存当前的数的状态
                    //默认当前num是质数
                    var flag = true;
                    
                    //判断num是否是质数
                    //获取2-num之间的数
                    for(var i=2 ; i<num ; i++){
                        //console.log(i);
                        //判断num是否能被i整除
                        if(num % i == 0){
                            //如果num能被i整除,则说明num一定不是质数
                            //设置flag为false
                            flag = false;
                        }
                    }
                    
                    //如果num是质数则输出
                    if(flag){
                        alert(num + "是质数!!!");
                    }else{
                        alert("这个不是质数")
                    }
                    
                    
                }
                
                
            </script>
    <script type="text/javascript">
                
                
                //测试如下的程序的性能
                //在程序执行前,开启计时器
                //console.time("计时器的名字")可以用来开启一个计时器
                //它需要一个字符串作为参数,这个字符串将会作为计时器的标识
                console.time("test");
                
                //打印2-100之间所有的数
                for(var i=2 ; i<=100000 ; i++){
                    var flag = true;
                    for(var j=2 ; j<=Math.sqrt(i) ; j++){
                        if(i%j == 0){
                            //如果进入判断则证明i不是质数,修改flag值为false
                            flag = false;
                            //一旦进入判断,则证明i不可能是质数了,此时循环再执行已经没有任何意义了
                            //使用break来结束循环
                            break;
                            
                            //不加break 215ms
                            //加break 25ms
                            //修改j<=后 2.6
                        }
                    }
                    //如果是质数,则打印i的值
                    if(flag){
                        //console.log(i);
                    }
                }
                
                //终止计时器
                //console.timeEnd()用来停止一个计时器,需要一个计时器的名字作为参数
                console.timeEnd("test");
                
                /*
                 * 36
                 * 1 36
                 * 2 18
                 * 3 12
                 * 4 9
                 * 6 6
                 */
                
                //可以通过Math.sqrt()对一个数进行开方
                //var result = Math.sqrt(97);
                
                //console.log("result = "+result)
                
                
            </script>

      

     

  • 相关阅读:
    PAT1066(AVL树)
    判断是对象,还是数组对象
    electron打包成.exe后限制只启动一个应用
    electron启动出现短暂的白屏
    js sort方法根据数组中对象的某一个属性值进行排序
    VUE DIV模拟input框的基本处理
    vue 设置 input 为不可以编辑
    VUE实现限制输入框最多输入15个中文,或者30个英文
    electron 点击事件无效
    electron监听系统托盘,electron是否最小化到系统托盘
  • 原文地址:https://www.cnblogs.com/lzb0803/p/9013672.html
Copyright © 2011-2022 走看看