此文仅为笔记,代码来源自网络

网络技术文档:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript

1、使用||和&&简化语句,其中||:首先检查左边的值,如果能将该值转换为true,则返回左边的值,不执行右边代码,否则返回右边的值;&&:首先检查左边的值,如果能将该值转换为false,则返回左边的值,不执行右边代码;否则返回右边的值,例如:typeof cb == "function" && cb('a')

2、Object.defineProperty(obj, prop, descriptor)方法接收三个参数:需要添加或修改属性的对象,属性名称,属性描述options{configurable:false;enumerable:false;value:undefined;writable;get;set}。

3、use strict:严格模式

4、instanceof 运算符用来测试一个对象在其原型链中是否存在一个构造函数的 prototype 属性,object instanceof constructor

5、声明:var:声明一个变量 const 声明创建一个只读的常量。常量不可以通过赋值改变其值,也不可以在脚本运行时重新声明。它必须被初始化为某个值。这不意味着常量指向的值不可变,而是变量标识符的值只能赋值一次,对象属性是不受保护的,let声明了一个块级域的局部变量,并且可以给它一个初始化值。

6、undefined 值在布尔类型环境中会被当作 false,在数值类环境中会被转换为 NaN
   null值在布尔类型环境中会被当作 false,在数值类环境中会被转换为0
 在涉及加法运算符(+)的数字和字符串表达式中,JavaScript 会把数字值转换为字符串。
 字符串转换为数字:使用
parseInt()parseFloat()或使用单目加法运算(+"1.1")  

7、变量的作用域:语句块中var声明的变量将成为语句块所在代码段的局部变量
  变量声明提升:你可以引用稍后声明的变量而不会引发异常;但是在使用或引用某个变量之后进行声明和初始化操作,这个被提升的引用仍将得到 undefined 值。

8、函数表达式:表达式定义的函数,称为匿名函数。匿名函数没有函数提升

9、在条件表达式中最好不要使用“=”来判断条件是否相等,如if(x=y)应该写为:if((x=y))

False等效值:false(是指布尔值,不是布尔对象),undefined,null,0,NaN,空字符串("")

10、标签语句:lable:statement,label 的值可以是js的任何非保留字标识符。 用label 标识的语句可以是任何语句。

11、闭包:当内部函数以某一种方式被任何一个外部函数作用域访问时,一个闭包就产生了,注意闭包中的this

12、this指什么完全取决于函数在何处被调用,而不是在何处被定义。

13、arguments对象:函数的实际参数会被保存在一个类似数组的arguments对象中,从0开始

14、解构:语法是一个能从数组或对象对应的数组结构或对象字面量里提取数据的 Javascript 表达式。

15、

js常用笔记的更多相关文章

  1. JS 学习笔记--9---变量-作用域-内存相关

    JS 中变量和其它语言中变量最大的区别就是,JS 是松散型语言,决定了它只是在某一个特定时间保存某一特定的值的一个名字而已.由于在定义变量的时候不需要显示规定必须保存某种类型的值,故变量的值以及保存的 ...

  2. WebGL three.js学习笔记 创建three.js代码的基本框架

    WebGL学习----Three.js学习笔记(1) webgl介绍 WebGL是一种3D绘图协议,它把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的 ...

  3. JS学习笔记5_DOM

    1.DOM节点的常用属性(所有节点都支持) nodeType:元素1,属性2,文本3 nodeName:元素标签名的大写形式 nodeValue:元素节点为null,文本节点为文本内容,属性节点为属性 ...

  4. Node.js学习笔记(3):NPM简明教程

    Node.js学习笔记(3):NPM简明教程 NPM常用操作 更新NPM版本 npm install npm -g -g,表示全局安装.我们可以指定更新版本,只需要在后面填上@版本号即可,也可以输入@ ...

  5. Node.js学习笔记(2):基本模块

    Node.js学习笔记(2):基本模块 模块 引入模块 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在No ...

  6. Node.js学习笔记(4):Yarn简明教程

    Node.js学习笔记(4):Yarn简明教程. 引入Yarn NPM是常用的包管理工具,现在我们引入是新一代的包管理工具Yarn.其具有快速.安全.可靠的特点. 安装方式 使用npm工具安装yarn ...

  7. WebGL three.js学习笔记 加载外部模型以及Tween.js动画

    WebGL three.js学习笔记 加载外部模型以及Tween.js动画 本文的程序实现了加载外部stl格式的模型,以及学习了如何把加载的模型变为一个粒子系统,并使用Tween.js对该粒子系统进行 ...

  8. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  9. js常用工具类.

    一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...

随机推荐

  1. JavaScript简介、语法

    一.JavaScript简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司 ...

  2. [C# 网络编程系列]专题五:TCP编程

    转自:http://www.cnblogs.com/zhili/archive/2012/08/25/2656840.html 前言 前面专题的例子都是基于应用层上的HTTP协议的介绍, 现在本专题来 ...

  3. ADO.NET 增删查改小总结

    转自:http://www.cnblogs.com/ashu123/archive/2010/10/10/ado_1.html 三套路-----增删改 1 using System.Data.SqlC ...

  4. web测试方面的知识

    web测试 软件测试体系架构设计 一.体系架构 1.C/S:客户端+服务器端,如QQ.单机版记事本.office等,所用语言:VB.C++.C.C#.JAVA.PB.D…等数组语言,C和S都是自己测, ...

  5. win7下安装load generator

    win7下只安装loadrunner load generator 1.点击setup.exe 2.选择“loadrunner 完整安装程序”   3.安装完成所需要的插件,然后重启 4.重新打开安装 ...

  6. SQL 判断字段中指定字符出现的次数

    原文地址:SQL 判断字段中指定字符出现的次数 原理:将指定字符转换为空,原长度减去转换后的长度就是指定字符的次数. 在做数据处理时遇到一个SQL操作的问题就是有一列关键词字段,字段中包含各种乱七八糟 ...

  7. AppStore IAP 客户端校验代码

    -(BOOL)putStringToItunes:(SKPaymentTransaction*)transaction { NSData * iapData = transaction.transac ...

  8. linux 多线程基础2

    6. 名称:: pthread_detach 功能: 使线程进入分离状态. 头文件: #include <pthread.h> 函数原形: int pthread_detach(pthre ...

  9. A*寻路算法的探寻与改良(三)

    A*寻路算法的探寻与改良(三) by:田宇轩                                        第三分:这部分内容基于树.查找算法等对A*算法的执行效率进行了改良,想了解细 ...

  10. kvm 性能调优

    CPU Tuning Cache share tuning 对于物理 CPU,同一个 core 的 threads 共享 L2 Cache,同一个 socket 的 cores 共享 L3 cache ...