前端学习day29:01-JS基础之变量

1.声明变量关键词

        变量用于存储数据

        需要先声明变量,才能使用

        声明变量使用的关键词主要有三个:letconstvar

        var关键词是老版本(ES5)JS所使用,现在已经淘汰

2.let

        let是新版本用于声明变量的关键词,let声明的变量为普通变量

        用法:

let a = 1

// 或者

let a

a = 1

        上述使用let声明一个变量,变量名为a,值为1

3.变量的使用

        正确用法:

// 先声明变量【此为注释】
let a = 1 // 声明时进行赋值

// 后使用变量
alert(a) // 此处浏览器弹窗:1

        上述代码也可以

let a // let变量可以声明时不赋值

a = 1 // 对变量a进行赋值

alert(a) // 弹窗:1

        错误用法:

// 此处先使用变量
alert(a) // 此处会报错
// 后进行声明,为错误用法,因为在使用时,变量未被声明,所以会报错
let a = 1

 

        结论:

        变量必须先声明后使用!

        先使用,后声明会报错

4.变量的声明

        在同一环境中(同一作用域内)所有变量名称不能冲突,否则报错

let a = 1

// 此处为其他代码

let a = 1 // 此处会报错

        结论:

        变量禁止在同一作用域内重复声明

5.更改变量值

        let声明的变量的值可以进行更改

let a = 1
alert(a) // 此处弹窗:1

a = 2 // 此处更改了变量a的值为2,后续再使用a时,值就是a
alert(a) // 此处弹窗:2

        结论:

        更改已声明变量的值时,直接对变量赋值即可,无需写声明关键词

6.const

        const所声明的变量为常量,而非普通变量

        常量:常量是一种特殊的变量,该变量的值必须在声明时就设置,且后续无法进行更改。

const a = 1 // 声明常量a,值为1

a = 2 // 此处修改常量的值是违规操作,所以会报错

 

        除此之外,const常量的特性跟let变量一致。

        关键字保留字列表

abstractargumentsbooleanbreakbyte
casecatchcharclassconst
continuedebuggerdefaultdeletedo
doubleelseenumevalexport
extendsfalsefinalfinallyfloat
forfunctiongotoifimplements
importininstanceofintinterface
letlongnativenewnull
packageprivateprotectedpublicreturn
shortstaticsuperswitchsynchronized
thisthrowthrowstransienttrue
trytypeofvarvoidvolatile
whilewithyield

        对象和方法

ArrayDateevalfunctionhasOwnProperty
InfinityisFiniteisNaNisPrototypeOflength
MathNaNnameNumberObject
prototypeStringtoStringundefinedvalueOf

        window对象下的关键字

alertallanchoranchorsarea
assignblurbuttoncheckboxclearInterval
clearTimeoutclientInformationcloseclosedconfirm
constructorcryptodecodeURIdecodeURIComponentdefaultStatus
documentelementelementsembedembeds
encodeURIencodeURIComponentescapeeventfileUpload
focusformformsframeinnerHeight
innerWidthlayerlayerslinklocation
mimeTypesnavigatenavigatorframesframeRate
hiddenhistoryimageimagesoffscreenBuffering
openopeneroptionouterHeightouterWidth
packagespageXOffsetpageYOffsetparentparseFloat
parseIntpasswordpkcs11pluginprompt
propertyIsEnumradioresetscreenXscreenY
scrollsecureselectselfsetInterval
setTimeoutstatussubmittainttext
textareatopunescapeuntaintwindow

        需要注意的是name这个词 ,不是关键字也不是保留字,在大部分浏览器和大部分情况下能当作变量使用,但是可能会有极个别和特殊的情况出现异常

7.其他注意事项

        js代码的存放位置:

        1.内部:head标签内的script标签内、body结束标签之前的script标签内
        2.标签内部:和html的耦合度太高,不利于维护。例如:<div id="box" οnclick='alert("你真棒")'>123</div>
        3.外部的js文件:<script src="xxx.js"></script>

        注意:外部引入的script标签内不要再写js代码了

        alert('ysc') 弹窗

        console.log()调试窗口、日志:把括号内的本体打印到控制台

        书写规范:
        ①严格区分大小写 
        ②英文半角输入
        ③严格缩进、换行、对齐、空格,为了维护性、美观性和可读性
        ④语句结束加分号;(没加大部分情况也没问题)

        注释方式:

        ①单行注释//
        ②/* 
                多行注释
           */

        变量的命名规范:
        ①最好见名知意 
        ②字母、数字、_ 和$的组合且不能以数字开头,常用的有驼峰命名法
        ③不能使用关键词(js里已经用了的词汇)、保留词(js未来版本可能要用的词汇)

        变量声明的几种情况:

        ①声明变量且赋值(常规)
              let num = 1 

        ②声明变量,暂时不赋值
              let box;默认值为undefined

        ③声明变量,先运算再赋值
              let a = 1
              let b = a + 1
              console.log(b); 

        ④重复声明会报错
              let b = a + 12
              let b = "ysc"
              console.log(b); 

        ⑤一次性声明多个变量用逗号隔开
              let a = 1,
                b = 2,
                c = 3;
              console.log(a,b);

        ⑥不写声明关键词(不要这样做)
              a = 1 
              a会挂载到window对象下,变成window的属性:window.a
              let声明的变量就不会这样

        ⑦不声明直接使用会报错

        ⑧声明并重复赋值,后者会覆盖前者
              let a = 2
              a = "ysc"
              console.log(a)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值