• javaScript一些需要注意的细节


    变量声明早于代码运行

    函数声明早于变量声明

    this指针代表的是执行当前代码的对象的所有者

    JavaScript执行完同步,才能执行异步队列。如:alert,for if while 同步执行,在执行这些代码时,其它代码不执行。//关于JavaScript异步执行

    属性在查找时先查找当前对象中属性,再查找继承原型,最后查找最终原型object是否存在。object的prototype为null。

    object.prototype共享一份内存。构造方法重复构造。

    花括号({})是function的简写,方括号([])是array的简写。

    a=b;为a指向同一个b

    a=b();为执行b,返回值赋值给a

    a=new b();为在内存新建一个b,a指向一个新的b对象

    function b(){
        return 1+2;
    }
    var a=b();//out 3
    var c=b;//out:function b(){ return 1+2;}

     y = y || 0;

    如果y已经定义 , y || 返回 y, 因为 y 是 true, 否则返回 0, 因为 undefined 为 false。

    1. false0、空字符串("")、NaNnull 和 undefined 被转换为 false
    2. 所有其他值被转换为 true

    在C++或C#中,当我们谈到对象,指的是类或者结构体的实例。对象根据他们实例化的模板(就是所谓的类),会拥有不同的 属性和方法。但在JavaScript里对象不是这个概念。在JavaScript中,对象就是一个键/值对的集合 -- 你可以把JavaScript的对象想象成一个键为字符串类型的字典。

    有两种简单方法可以创建一个空对象:

    var obj = new Object();

    和:

    var obj = {};

    这两种方法在语义上是相同的。第二种更方便的方法叫作“对象字面量(object literal)”法。这种也是 JSON 格式的核心语法,一般我们优先选择第二种方法。

    “对象字面量”也可以用来在对象实例中定义一个对象:

    var obj = {
        name: "Carrot",
        "for": "Max",
        details: {
            color: "orange",
            size: 12
        }
    }

    对象的属性可以通过链式(chain)表示方法进行访问:

    obj.details.color; // orange
    obj["details"]["size"]; // 12
    var str="size";
    obj["details"][str]; // 12 动态访问
    var str2="length";
    obj["details"][str2]=100;//动态添加
    obj["details"]["length"]; // 100
    
    var obj = {
        name: "Carrot",
        "for": "Max",
        details: {
            color: "orange",
            size: 12,
            length:100          
        }
    }

    以上代码示例来自----来自 

  • 相关阅读:
    Discuz!如何设置板块主题分类
    Discuz X2.5 模板目录结构注释说明
    帖子标题颜色-----高亮
    discuz收听
    Discuz伪静态导致 除了首页,其他访问不了
    tag标签划过
    如何取消在线会员右边的下拉菜单,看图
    discuz邮件设置
    2017 ACM/ICPC Asia Regional Qingdao Online
    HDU 5769 Substring 后缀数组
  • 原文地址:https://www.cnblogs.com/v-weiwang/p/4759849.html
Copyright © 2020-2023  润新知