javascript基础学习心得01

  • 绝对值小于等于2的53次方的整数,即-253到253,都可以精确表示,也就是说15位的十进制数都可以精确处理
  • JavaScript 能够表示的数值范围为21024到2-1023(开区间),超出这个范围的数无法表示;
  • NaN不是独立的数据类型,而是一个特殊数值,它的数据类型依然属于Number
  • NaN不等于任何值,包括它本身;
  • 单纯的数学运算几乎没有可能抛出错误;
  • InfinityNaN比较,总是返回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-InfinityNaNundefined这几个值会返回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

原文地址:https://www.cnblogs.com/endymion/p/9165134.html

时间: 2024-10-14 03:15:50

javascript基础学习心得01的相关文章

JavaScript基础学习心得02

写一个js效果的步骤: 先实现布局: 了解动画实现的原理: 了解js语法: js如何获取元素? document.getElementById('link') 事件 鼠标事件: onclick onmouseover onmouseout onmousemove //鼠标的抚摸事件 onmousedown onmouseup 键盘事件: 系统事件: onload //加载完了html代码后再执行script脚本 表单事件: 自定义事件:原生没有,我们得自己做. 如何添加事件? 就像酱紫:元素.o

javascript小白学习指南0---1

引言: 做为一名程序员,都是真心的想把自己的东西分享出来,供大家一起学习探讨,一起提高技能,一起涨工资,呵 这一系列的文章都是关于Javascript 基础的 当然文章当中穿插了些我自己的理解,希望可以帮助一些刚开始的童鞋! 废话不多说我们开始吧! 第一章:Javascript 基本概念 主要内容 数据类型 控制语句 函数 我们先从最简单的数据类型开始吧! 首先请记住javascript 有5种基本数据类型和1种复杂数据类型,至于为什么只有这六种,大家可以去翻翻W3C的资料哈! 五种基本数据类型

javascript基础学习(十五)

javascript之cookie 学习要点: cookie介绍 创建与获取cookie cookie的编码 cookie的生存期 cookie的路径 cookie的domain cookie的secure 一.cookie介绍 cookie实际上就是一些信息,这些信息以文件的形式存储在客户端计算机上.在javascript中,cookie主要用来保存状态,或用于识别身份. 二.创建与获取cookie 创建cookie的语法代码如下所示:document.cookie="name=value&q

javascript基础学习(八)

javascript之日期对象 学习要点: 日期对象 将日期对象转换为字符串 将日期对象中的日期和时间转换为字符串 日期对象中的日期 日期对象中的时间 设置日期对象中的日期 设置日期对象中的时间 与毫秒相关的方法 一.日期对象 在javascript中并没有日期型的数据类型,但是提供了一个日期对象可以操作日期和时间. 日期对象的创建: new Date(); 二.将日期对象转换为字符串 将日期对象转换为字符串可以使用以下4种方法: date.toString();//将日期对象转换为字符串时,采

javascript基础学习(二)

javascript的数据类型 学习要点: typeof操作符 五种简单数据类型:Undefined.String.Number.Null.Boolean 引用数据类型:数组和对象 一.typeof操作符 typeof操作符用来检测变量的数据类型,操作符可以操作变量也可以操作字面量. 对变量或值运用typeof操作符得到如下值: undefined----如果变量是Undefined类型: boolean-------如果变量是Boolean类型: number-------如果变量是Numbe

[转载] 几张非常有意义的JavaScript基础学习思维图

原文:http://www.w3cfuns.com/forum.php?mod=viewthread&tid=5598364&extra=page%3D1%26filter%3Ddigest%26digest%3D1%26digest%3D1 1.JavaScript 数组 2.JavaScript 函数基础 3.Javascript 运算符 4.JavaScript 流程控制 5.JavaScript 正则表达式 6.JavaScript 字符串函数 7.JavaScript 数据类型

javascript基础学习(十二)

javascript之BOM 学习要点: 屏幕对象 History对象 Location对象 一.屏幕对象 Screen对象是一个由javascript自动创建的对象,该对象的主要作用是描述客户端的显示器的信息. 目前显示器分辨率为800X600或1024X768两种. screen.height:屏幕的高度 screen.width:屏幕的宽度 screen.availHeigh:屏幕的有效高度 screen.availWidth:屏幕的有效宽度 二.History对象 History对象可以

javascript基础学习(五)

javascript之函数 学习要点: 函数的介绍 函数的参数 函数的属性和方法 系统函数 一.函数的介绍 1.函数就是一段javascript代码.可以分为用户自定义函数和系统函数.   如果一个函数是javascript内置的函数,就称为系统函数.如果函数是自己编写的函数,就是自定义函数. 2.在javascript用function来定义一个函数.function 函数名(参数1,参数2,...){<语句块>  return 返回值} (PS:return语句可以省略) 3.函数的嵌套定

javascript基础学习(三)

javascript之运算符 学习要点: 表达式 运算符:一元运算符,算术运算符,关系运算符,逻辑运算符,*位运算符,赋值运算符 一.表达式 表达式有常量表达式,变量表达式,复合表达式. 二.算术运算符 一元:+(正号).-(负号).++.—— 二元:*./.%.+.- 三.关系运算符 ==.=== ps:等同运算符比相等运算符要求更为严格,等同运算符只有在两个操作数类型相同,并且值也相同的情况下才会返回true. <.<=.>.>= instanceof运算符.       in