zoukankan      html  css  js  c++  java
  • javascript基础学习心得01

    • 绝对值小于等于2的53次方的整数,即-253到253,都可以精确表示,也就是说15位的十进制数都可以精确处理
    • JavaScript 能够表示的数值范围为21024到2-1023(开区间),超出这个范围的数无法表示;
    • NaN不是独立的数据类型,而是一个特殊数值,它的数据类型依然属于Number
    • NaN不等于任何值,包括它本身;
    • 单纯的数学运算几乎没有可能抛出错误;
    • Infinity NaN比较,总是返回false ;
    • 0乘以Infinity,返回NaN
    • 0除以Infinity ,返回0 ;
    • Infinity除以0,返回Infinity
    • parseFloat方法会自动过滤字符串前导的空格;
    • parseFloat 会将空字符串转为NaN
    • isNaN为true的值,有可能不是NaN,而是一个字符串;
    • 对于对象和数组,isNaN返回true;
    • 但是,对于空数组和只有一个数值成员的数组,isNaN返回false。
    • 判断NaN更可靠的方法是,利用NaN为唯一不等于自身的值的这个特点,进行判断:
    function myIsNaN(value) {
      return value !== value;
    }
    
    • 除了Infinity-InfinityNaN undefined 这几个值会返回false ,isFinite 方法对于其他的数值都会返回true ;
    • 字符串内部的单个字符无法改变和增删,这些操作会默默地失败;
    • 字符串的length属性无法改变,但是不会报错;
    • JavaScript 的单位字符长度固定为16位长度,即2个字节。对于码点在U+10000到U+10FFFF之间的字符,JavaScript 总是认为它们是两个字符(length属性为2)。所以处理的时候,必须把这一点考虑在内,也就是说,JavaScript 返回的字符串长度可能是不正确的
    • 属性可以动态创建,不必在对象声明时就指定;
    • 如果不同的变量名指向同一个对象,那么它们都是这个对象的引用,也就是说指向同一个内存地址。修改其中一个变量,会影响到其他所有变量;
    • JavaScript 规定,如果行首是大括号,一律解释为语句(即代码块)。如果要解释为表达式(即对象),必须在大括号前加上圆括号:
    eval(‘{foo: 123}’) // 123
    eval(‘({foo: 123})’) // {foo: 123}
    
    • 请注意,如果使用方括号运算符,键名必须放在引号里面,否则会被当作变量处理:
    var foo = ‘bar’;
    
    var obj = {
      foo: 1,
      bar: 2
    };
    
    obj.foo  // 1
    obj[foo]  // 2
    
    • 注意,数值键名不能使用点运算符(因为会被当成小数点),只能使用方括号运算符:
    var obj = {
      123: ‘hello world’
    };
    
    obj.123 // 报错
    obj[123] // “hello world”
    
    • 查看一个对象本身的所有属性,可以使用Object.keys方法:
    var obj = {
      key1: 1,
      key2: 2
    };
    
    Object.keys(obj);
    // [‘key1’, ‘key2’]
    
    • delete命令只能删除对象本身的属性,无法删除继承的属性;
    • in运算符的一个问题是,它不能识别哪些属性是对象自身的,哪些属性是继承的:
    var obj = { p: 1 };
    ‘p’ in obj // true
    ‘toString’ in obj // true
    
  • 相关阅读:
    C# 反射 通过类名创建类实例
    c#委托把方法当成参数
    PPT美化大师
    以Outlook样式分组和排列数据项
    使用windows服务和MSMQ和进行日志管理(解决高并发问题)
    springboot配置filter
    filter 中用spring StopWatch 监控请求执行时间
    spring计时工具类stopwatch用法
    Spring异步任务处理,@Async的配置和使用
    注解用法详解——@SuppressWarnings
  • 原文地址:https://www.cnblogs.com/endymion/p/9165134.html
Copyright © 2011-2022 走看看