JS笔记整理

本文介绍了JavaScript的基础知识,包括输入年龄的prompt,页面输出的document.write,变量的声明与赋值,常量的定义,数据类型的检查,字符串拼接和模板字符串的使用,以及条件语句(if-else)、循环(while,for)和数组的操作。此外,还讲解了函数的定义和调用,作用域的概念,以及对象的创建和修改。
摘要由CSDN通过智能技术生成
<script>
        //输入语句//
        prompt('请输入年龄:')
        //打印到页面//
        document.write('<strong>你们真是小黑子</strong>')//括号内可识别标签//
        //控制台输出语句//
        console.log('小黑子')
 prompt('请输入:')
        //变量:盒子---存储数据的容器,数据本身不是变量
        //变量的声明:
        // let 变量名         var 变量名
        let age
        //变量赋值
        age = prompt('请输入:')
        console.log(age)

        //变量的初始化
        let uname = prompt('请输入您的用户名')
        console.log(uname)

        //同时定义多个变量(不建议使用)
        let a = 'zs' , b = 21
        console.log(zs,21)

        //let uname = prompt('请输入您的用户名')
        //document.write(uname)    打印在页面上

//变量命名规范:1、有效符号(大小写字母、数字、下划线、$)

        //2、关键字、保留字不能用于变量命名

        //3、不以数字开头

        //4、尽量使用有意义的名字,方便后期检查修改

        //5、驼峰命名法:用于命名比较长的名字,userName(用大写区别开多个名字)

 //var 可以多次声明同一变量

//常量名大写,常量名无法更改,如果更改则会报错

        const PI=3.14

        console.log(PI)

 //js是弱数据类型语言    只有赋值后,才知道是什么数据类型

        let uname = 21

        console.log(typeof(uname))//可查看数据是什么数据类型

 //let uname = 'ss"mm"aa'//用来同时赋多个值避免报错,用""隔开
       // console.log(typeof(uname))

        //字符串拼接
        //let a = prompt('ss')
        //let b = prompt('ssb')
        //console.log(a+b)

        //模板字符串
        let uname = prompt('请输入名字')
        let age = prompt('请输入年龄')
        document.write(`<strong>你叫${uname},今年${age0}岁</strong>`)
 console.log(typeof(3<5))
        //undefinded   声明,未赋值
        //rull NaN not a number
        console.log(undefined+1)
        console.log(rull+1)
// = 赋值运算符
        let a = 21
        a = 33 
        a +=4 //a=a+4
        a *=2  //a=a*2
        a -=3 //a=a-3
        a /=2 //a=a/2
       // alert(a)

        let b = a++ //先赋值再自增,b=a, a=a+1
        alert(b)
        alert(a)

        b = ++a  //先自增再赋值,a=a+1,b=a


        //比较运算符
        //   >   <   >=   <=   ==   ===
        //"===":即比较数值也比较类型
        //"==":(隐式转换)只比较数值
//&&:“与”     ||:“或”    !:“非”
        alert(4>3 && 3<5)  //两真才为真,一假则为假
        alert(4<3 || 3<5)  //一真则真,全假则为假
        alert(!(4<3))      //非真则为假
 let age =11
        //if(条件){执行的代码}
        if (age <18){
            document.write('你是小黑子')
        }
 //let age =+prompt('请输入你的年龄')
        //if(age<=18){
       //     alert('你是ikun')
       // }
        //else{
      //      alert('你是小黑子')
       // }

       let year =+prompt('请输入年份')
       if(year%4===0 &&year%100===0 || year%400===0){
        alert('闰年')
       }else{
        alert('平年')
       }
<script>
        let a =+prompt('请输入num1')
        let b =+prompt('请输入num2')
        //?:判断条件,条件成立时执行条件,不成立则执行
        a>b?alert(`最大值是:${a}`) :alert(`最大值是:${b}`)
    </script>
<script>
        let num =+prompt('请输入今天星期几:')
        switch(num){
            case 1:
                alert('星期一')
                break
            case 2:
                alert('星期二')
                break
            case 3:
            alert('星期三') 
            break
            case 4:
                alert('星期四')
                break
                case 5:
                    alert('星期五')
                    break
                    case 6:
                    alert('周末')
                    case 7:
                        alert('周末')
                        break
                        default:
                            alert('你是外星人吗0.o?')

        }
    </script>
<script>
       // let i =10
       // while(i>0){
         //   console.log('你是小黑子')
           // i--
        //}

        //1~100的累加和
        let i=0
        let sum =0
        while(i<=100){
            sum+=i
            i++
        }

        alert(sum)
    </script>
<script>
        //         0      1       2     3      4
        let arr=['张三', '李四','王五','小米','华为']
        //数组的声明方式
        //arr[索引下标]
        alert(arr[4])

        //数组遍历
        //for(let i in arr){
         //   console.log(arr[i]);
        //}
        //数组的操作

        //通过索引下标给对应元素重新赋值
        arr[1]='张三'
        console.log(arr instanceof Array);
        let arr2=[1,2,3,4]
        //concat合并数组
        arr3 =arr.concat(arr2)
        console.log(arr3);

        //增加 
        //push  在数组的末尾添加元素
        arr.push('gg')
        console.log(arr);
        //unshift 在数组的首部添加元素
        arr.unshift('kk')
        console.log(arr);

        //删除
        //shift   删除首部的元素
        arr.shift()
        console.log(arr);
        //pop   删除尾部的元素
        arr.pop()
        console.log(arr);
        
        //splice(删除的起始位置,删除的个数)
        arr.splice(2,1)
        console.log(arr);
        //也可以用于添加元素
        //splice(删除的起始位置,0,要添加的元素)
        arr.splice(2,0,'李四')
        console.log(arr);

        //可以用于改变元素间连接的字符或者元素,并打印所有元素
        console.log(arr.join('**'));
        //reverse颠倒数组的元素排列
        console.log(arr.reverse());
        //slice截取数组()中的代表截取的个数
        console.log(arr.slice(3));
//function 函数名(){
        //    执行的代码
        //}
        //调用函数   函数名()
        //函数必须通过调用才会执行
            function sayHi(){
                console.log('hello,function');
            }

            sayHi()


            function getSum(a,b){
                // console.log(a+b);
                return a+b   //函数要有返回值,必须添加return关键字
            }
            let c=getSum(a=2,b=9)
            console.log(c);


            //块级作用域:函数里面的内容
            //全局作用域:函数外边的内容,全局作用域声明的变量可以被局部作用域使用,但局部作用域里声明的变量不能被全局作用域使用。
            function getSum(){
                //arguments:接收所有实参并保存到数组里
                console.log(arguments);
                let sum=0
                for(let i in arguments){
                    sum+=arguments[i]
                }
                return sum
            }
            let e=getSum(3,2,1,5,7,9,5,6)
            console.log(e);
    </script>
<script>
        //值传递,只是把新的值赋给元素并不改变原来的值
        let a=10
        let b=20
        function change(x,y){
            x=30;
            y=50;
        }
        change(a,b);
        alert(a+"--"+b)


        //引用传递,传地址,值会发生改变
        let arr=[1,3,4,5]
        function change2(a){
            a.push(1000)
        }
        change2(arr)
        alert(arr)
    </script>
<script>
        let obj={
            uname:'ss',
            age:21,
            gender,'nan'
        }

        //改:对象.属性名
        obj.uname='GGbond'
        console.log(obj);

        //增加:对象,新属性名
        obj.sing=function(){
            console.log('sing~');
        }
        
        //删除
        //delete 对象.属性名
        delete obj.gender
        console.log(obj);
        
    </script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值