JavaScript基础重点(必看)


Posted in Javascript onJuly 09, 2016

接触JavaScript这门语言也就很长的时间了,但从来没有系统的去了解这么语言。趁现在刚刚毕业以及某些原因无心工作的情况下去系统的了解一下这么语言,也想通过这么语言养成写博客的习惯,因为我认为这是一件对程序员来说很神圣又很光荣的事情。

1.1背景

相信很多初学者都遗忘或混淆的就是JavaScript的官方命名:ECMAScript。2015年6月17日,ECMAScript 6发布正式版本,即ECMAScript 2015。

1.2语法

常规语法省略

重点强调:

1.原始值和对象:原始值包括布尔值、数字、字符串、null、和undefined。其他的值都是对象。两者之间最主要的区别在于它们的比较方式:每个对象都有唯一的标识且只等于自己。

var obj1={};
var obj2={};
alert(obj1 === obj2);

//false

alert(obj1===obj1);

//true

var prim1=123;
var prim2=123;
alert(prim1===prim2);

//true

2.使用typeof和instanceof对值分类。

typeof

操作数 结  果
undefined 'undefined'
null object
布尔值 boolean
数字 number
字符串  string
函数 function
所有其他的常规值 object
引擎创建的值 JS引擎可以被允许创建一些值,且typeof的结果可以返回任意字符串
   

3.布尔值:

假值:undefined,null,false,-0,NaN,''

二元逻辑运算符:JavaScript中的二元逻辑运算符是短路的。如果第一个运算数就是足以确定结果的话,则不会对第二个运算数做评估。与(&&):如果第一个运算数是假值,返回它。或(||):如果第一个运算数是真值,返回它。

 4.IIFE:

引入新的作用域。作用:去除闭包(函数以及它所连接的周围作用域中的变量)造成的无意共享。

例:

var result=[];
for(var i=0;i<5;i++)
{
result.push(function(){return i;});//(1)
}
console.log(result[1]()); //5  (not 1)
console.log(result[3]()); //5  (not 3)

标记为(1)的这行返回值总是i的当前值,而并非函数被创建时的值。在循环结束之后,i的值为5,所以数组中所有的函数都返回这个数值。如果想要标记(1)这行的函数获得当前i值的一个快照,就可以使用IIFE.

for(var i=0;i<5;i++)
{
 (function (){
  var i2=i; 
  result.push(function(){return i2});     
 }()
) ; 
}

此上都是在整理过程中以前未注意或没有了解到的部分知识,写在此处做知识点的补充之用。

以上这篇JavaScript基础重点(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 密码强弱度检测万能插件
Feb 25 Javascript
js cookies 常见网页木马挂马代码 24小时只加载一次
Apr 13 Javascript
原生js ActiveXObject获取execl里面的值
Nov 01 Javascript
js中文逗号转英文实现
Feb 11 Javascript
js实现图片在未加载完成前显示加载中字样
Sep 03 Javascript
微信+angularJS的SPA应用中用router进行页面跳转,jssdk校验失败问题解决
Sep 09 Javascript
JavaScript实现DOM对象选择器
Sep 24 Javascript
高性能的javascript之加载顺序与执行原理篇
Jan 14 Javascript
vue19 组建 Vue.extend component、组件模版、动态组件 的实例代码
Apr 04 Javascript
浅谈VUE防抖与节流的最佳解决方案(函数式组件)
May 22 Javascript
JsonServer安装及启动过程图解
Feb 28 Javascript
vue 使用原生组件上传图片的实例
Sep 08 Javascript
jQuery获取同级元素的简单代码
Jul 09 #Javascript
JS添加删除DIV的简单实例
Jul 08 #Javascript
js操作DOM--添加、删除节点的简单实例
Jul 08 #Javascript
简单封装js的dom查询实例代码
Jul 08 #Javascript
JS选取DOM元素的简单方法
Jul 08 #Javascript
封装获取dom元素的简单实例
Jul 08 #Javascript
jquery.serialize() 函数语法及简单实例
Jul 08 #Javascript
You might like
PHP连接access数据库
2015/03/27 PHP
基于thinkPHP框架实现留言板的方法
2016/10/17 PHP
PHP+Apache环境中如何隐藏Apache版本
2017/11/24 PHP
javascript动画浅析
2012/08/30 Javascript
浅析showModalDialog数据缓存问题(用禁止浏览器缓存解决)
2013/07/09 Javascript
javascript和jquery实现设置和移除文本框默认值效果代码
2015/01/13 Javascript
JS基于FileSystemObject创建一个指定路径的TXT文本文件
2015/08/05 Javascript
jQuery超酷平面式时钟效果代码分享
2020/03/30 Javascript
全面了解javascript三元运算符
2016/06/27 Javascript
Bootstrap简单表单显示学习笔记
2016/11/15 Javascript
关于Sequelize连接查询时inlude中model和association的区别详解
2017/02/27 Javascript
Angular2中select用法之设置默认值与事件详解
2017/05/07 Javascript
jQuery NProgress.js加载进度插件的简单使用方法
2018/01/31 jQuery
JavaScript递归函数定义与用法实例分析
2019/01/24 Javascript
微信小程序性能优化之checkSession的使用
2019/03/06 Javascript
vue自定义js图片碎片轮播图切换效果的实现代码
2019/04/28 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
2019/06/19 Javascript
vuex actions异步修改状态的实例详解
2019/11/06 Javascript
基于html+css+js实现简易计算器代码实例
2020/02/28 Javascript
vue路由的配置和页面切换详解
2020/09/09 Javascript
解决vuex刷新数据消失问题
2020/11/12 Javascript
[42:32]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第二局
2016/02/27 DOTA
rhythmbox中文名乱码问题解决方法
2008/09/06 Python
Python编程中对super函数的正确理解和用法解析
2016/07/02 Python
让Django支持Sql Server作后端数据库的方法
2018/05/29 Python
解决python中导入win32com.client出错的问题
2019/07/26 Python
Python字符串处理的8招秘籍(小结)
2019/08/13 Python
用python介绍4种常用的单链表翻转的方法小结
2020/02/24 Python
美国巧克力喷泉品牌:Sephra
2019/05/05 全球购物
DOUGLAS荷兰:购买香水和化妆品
2020/10/24 全球购物
英语专业个人求职信范文
2014/02/01 职场文书
给孩子的新年寄语
2014/04/08 职场文书
研究生个人学年总结
2015/02/14 职场文书
回复函范文
2015/07/14 职场文书
2016年先进教师个人事迹材料
2016/02/26 职场文书
详解Python requests模块
2021/06/21 Python