【前端必备技能js—3.js基本概念】

1、语法

大量借鉴了C及其他类C语言(如Java和Perl)的语法。因此,熟悉这些语言的开发人员在接受ECMAScript更加宽松的语法时,一定会有一种轻松自在的感觉。

  • 区分大小写:(变量、函数名和操作符)都区分大小写。这也就意味着,变量名test和变量名Test分别表示两个不同的变量。

  • 标识符: 指变量、函数、属性的名字,或者函数的参数。标识符可以是按照下列格式规则组合起来的一或多个字符:

    • 第一个字符必须是一个字母、下划线(_)或一个美元符号($);
    • 其他字符可以是字母、下划线、美元符号或数字;
    • 按照惯例,ECMAScript标识符采用驼峰大小写格式,也就是第一个字母小写,剩下的每个单词的首字母大写。
  • 注释: 分单行注释、多行注释;

        // 单行注释
    
        /**
         * 多行注释
         */
    
  • 严格模式: use strict ,其是一个编译指示(pragma),用于告诉支持的JavaScript引擎切换到严格模式。这是为不破坏ECMAScript 3语法而特意选定的语法。

  • 语句: ECMAScript中的语句以一个分号结尾;如果省略分号,则由解析器确定语句的结尾。虽然语句结尾的分号不是必需的,但我们建议任何时候都不要省略它。因为加上这个分号可以避免很多错误和在某些情况下增进代码的性能(因为这样解析器就不必再花时间推测应该在哪里插入分号了)。

2、关键字和保留字

  • ECMA-262描述了一组具有特定用途的关键字,这些关键字可用于表示控制语句的开始或结束,或者用于执行特定操作等。按照规则,关键字也是语言保留的,不能用作标识符。
  • ECMA-262还描述了另外一组不能用作标识符的保留字。尽管保留字在这门语言中还没有任何特定的用途,但它们有可能在将来被用作关键字

3、变量

ECMAScript的变量是松散类型的,可以用来保存任何类型的数据。换句话说,每个变量仅仅是一个用于保存值的占位符而已。

    //用var操作符定义的变量将成为定义该变量的作用域中的局部变量。 也就是说, 如果在函数中使用var定义一个变量, 那么这个变量在函数退出后就会被销毁, 例如:
    function test() {
   
        var a = '1'; //局部变量
    }
    test();
    console.log(a); //错误
    //这里, 变量message是在函数中使用var定义的。 当函数被调用时, 就会创建该变量并为其赋值。 而在此之后, 这个变量又会立即被销毁, 因此例子中的下一行代码就会导致错误。 不过, 可以像下面这样省略var操作符, 从而创建一个全局变量:
    function test() {
   
        a = '1'; //全局变量
    }
    test();
    console.log(a); //1
    //这个例子省略了var操作符,因而message就成了全局变量。这样,只要调用过一次test()函数,这个变量就有了定义,就可以在函数外部的任何地方被访问到。

4、数据类型

ECMAScript中有5种基本数据类型: Undefined、Null、Boolean、Number和String。还有1种复杂数据类型——Object。ECMAScript不支持任何创建自定义类型的机制,而所有值最终都将是上述6种数据类型之一。乍一看,好像只有6种数据类型不足以表示所有数据;但是,由于ECMAScript数据类型具有动态性,因此的确没有再定义其他数据类型的必要了。

  • typeof操作符: 鉴于ECMAScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型——typeof就是负责提供这方面信息的操作符。对一个值使用typeof操作符可能返回下列某个字符串:

    • “undefined”——如果这个值未定义;
    • “boolean”——如果这个值是布尔值;
    • “string”——如果这个值是字符串;
    • “number”——如果这个值是数值;
    • “object”——如果这个值是对象或null;
    • “function”——如果这个值是函数。

    注意: 调用typeof null会返回"object"

  • Undefined类型: Undefined类型只有一个值,即特殊的undefined。在声明变量但未对其加以初始化时,这个变量的值就是undefined。

  • **Null类型:**Null类型是第二个只有一个值的数据类型,这个特殊的值是null。从逻辑角度来看,null值表示一个空对象指针,而这也正是使用typeof操作符检测null值时会返回"object"的原因。

    //实际上,undefined值是派生自null值的,因此ECMA-262规定对它们的  相等性测试要返回true:
    console.log(undefined == null) //true
    
  • Boolean类型: Boolean类型是ECMAScript中使用得最多的一种类型,该类型只有两个字面值:true和false。这两个值与数字值不是一回事,因此true不一定等于1,而false也不一定等于0。需要注意的是,Boolean类型的字面值true和false是区分大小写的。也就是说,True和False(以及其他的混合大小写形式)都不是Boolean值,只是标识符。

  • Number类型: Number类型应该是ECMAScript中最令人关注的数据类型了&#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值