zoukankan      html  css  js  c++  java
  • JavaScript权威设计--JavaScript表达式与运算符(简要学习笔记五)

    1.3种原始表达式

        1.直接量:    1.23    //数字直接量
                            “hello”    //字符串直接量
                            ...
        2.保留字构成的原始表达式:
            true    //返回布尔值:真
            false    //假
            null    //返回一个值:空
        3.变量:
            i    //返回变量i的值
            sum    //返回sum的值
     
    2.对象初始化表达式
        
    var p={
            x:2.3,
            y:-1.2
        }    //一个拥有两个属性成员的对象
     
        对象直接量也可以嵌套:
        
    var rea={
            upp:{
                x:2,
                y:2
            },
            low:{
                x:4,
                y:5
            }
        }
     
    3.左值
        左值是个古老的术语,它是指表达式只能出现在赋值运算符的左侧
     
    4.值比较的问题
    两个值在比较的时候会出现类型转换的问题。(这种转换只是针对相等运算符,也即是“==”)
    在全等运算符===中不会出现任何类型转换。
    转换的规则是:对象转换为原始值,然后在进行比较。对象通过toSrting()方法或valueOf()方法转换为原始值。
    如:“1”==true    //结果是:true
    首先布尔值true转换为数字1,然后执行比较
    “1”==1
    然后字符串“1”转换为数字1
    1==1
    因为两个数字的值相等,因此比较结果为true
     
    5.in运算符
    in运算符希望左侧是个字符串或者可以转换为字符串,希望右侧是个对象
    例子:
       
     var point={
            x:1,
            y:2
        }
        "x" in point    //结果是true,对象point中有一个名为x的属性
      “toString”in point     //结果是true,对象继承了toString()方法
     
    6.instanceof运算符
    希望左侧是个对象,右侧是对象的类
    例子:
        
    var d=new Date();
        d instanceof Date;    //true
        d instanceof  Object    //true,所有的对象都是Object对象的实例
        d instanceof Number      //false,d不是Number对象
     
        为了计算表达式:o    instanceof    f。JavaScript首先计算f.prototype,然后在原型链中查找o,如果找到,那么o是f的一个实例,表达式返回true。如果f.prototype不在o的原型链中,那么o就不是f的实例,返回false。
  • 相关阅读:
    VUE注意
    https://www.ituring.com.cn/article/211352虚拟DOM
    web.xml中关于Servlet、Filter、Listener的配置
    Eclipse中web项目部署至Tomcat步骤
    BAE百度云平台的mysql数据库的施用(Java)
    MySQL存储过程
    python列表插入--append(), extend(), insert()
    range()函数
    c++拷贝构造函数引用传参
    我居然要写这周的周报???
  • 原文地址:https://www.cnblogs.com/zqzjs/p/4799290.html
Copyright © 2011-2022 走看看