js学习阶段总结(必看篇)


Posted in Javascript onJune 16, 2016

typeof操作符:返回字符串,可能是“undefined”,“boolean”,“ string”,“number”,“object”,“function”中的一种,所以不能判断数组。

NaN(Not a Number):用法NaN(val)如果val能被转化成一个数就返回false,否则返回true。

parseInt(val,way)其中way可以是2,4...就是要按照这个进制来转化,返回number类型,num.toString(way)同理,只不过返回string类型。

object类型有一个hasOwnProperty(name)来判断当前对象是在实例中还是原型中。

每个函数都有个arguments属性对象来记录它的参数,相当于一个参数的数组,用argumentscallee可以递归。

unshift方法可以从前端向数组推入两个元素并返回长度,用unshift和pop可以反向模拟队列。

sort(compare),其中compare(val1,val2)方法当val1在val2前面返回-1,后面返回,0好像是不变。

对数组操作用splice函数,splice(a1,a2,a3......)a1,a2必填a1表示起始位置,a2表示要删除的项数,后面的参数表示从该位置要插入的新值。

indexOf返回一个val在数组中的位置,lastindexOf()从后面开始数。

数组的迭代方法:every()每个值都返回true才返回true,filter()返回所有返回true元素的数组,forEach()只是运行函数,没有返回,map()返回函数调用结果组成的数组,some()与every相对,若有一个返回ture则返回true。

举例:var everyRes = number.every(function(item,index,array){return item>2 ;}) ;//item,index,array三个参数是必填的。

数组的归并:reduce和reduceRight(),举例:var sum = values.reduce(function(prev,cur,index,array){return prev+cur;}) ;prev代表前一个,cur代表后一个。

Date类型:var date = new Date(Date.parse("May 25,2004")); var date = new Date(Date.UTC(2015,4,5,17,55,50));

call和apply区别第一个是this(上下文对象)。

var obj =eval("("+data+")")来转化json,JSON.parse(data)也可以,两者的区别是eval相当于是把内容当做js来解析,而parse是只转化成obj对象。

与JSON.parse对应的是JSON.stringify方法,来把obj变成json

判读一个对象是不是数组:Object.prototype.toString.call(o) == '[object Array]' ;

如何用用continue跳出两层循环(对break也适用):

var num = 0 ;
outer:
for(var i=0;i<10;i++)
  for(var j=0;j<10;j++)
     {
        if(i==5&&j==5)
        {
            continue outermost ;
         }
         num++ ;
      }
alert(num);//95

with语句:

var obj = {
    search : "st" ,
    name : "lala",
    url : "3water.com"
} ;
with(pbj){
  var a = search ;
  var b = name ;
  var c = url ;
}

Object.defineProperty(obj,"key",{

configurable:true,

     value:"value"

});

这样可以让对象的属性只读。

用Object.defineProperties可以一次添加多个属性

Object.defineProperties(book,{
  _year:{
        value:2004
   },

  edition:{
        value:1
   },
 
   year:{
        get:function(){
            return this._year ;
         }
         set:function(newValue){
             if(newValue>2004)
              {
                 this._year = newValue ;
                 edition++ ;
              }
         }
        }
    }
}) ;

以上就是小编为大家带来的js学习阶段总结(必看篇)的全部内容了,希望大家多多支持脚步之家。

Javascript 相关文章推荐
Prototype String对象 学习
Jul 19 Javascript
有关javascript的性能优化 (repaint和reflow)
Apr 12 Javascript
点击显示指定元素隐藏其他同辈元素的方法
Feb 19 Javascript
jQuery遍历之next()、nextAll()方法使用实例
Nov 08 Javascript
深入理解JavaScript系列(25):设计模式之单例模式详解
Mar 03 Javascript
jquery实现删除一个元素后面的所有元素功能
Dec 21 Javascript
jQuery插件实现文字无缝向上滚动效果代码
Feb 25 Javascript
JS实现的模仿QQ头像资料卡显示与隐藏效果
Apr 07 Javascript
vue中for循环更改数据的实例代码(数据变化但页面数据未变)
Sep 15 Javascript
koa2使用ejs和nunjucks作为模板引擎的使用
Nov 27 Javascript
JS实现点击生成UUID的方法完整实例【基于jQuery】
Jun 12 jQuery
vue3不同环境下实现配置代理
May 25 Vue.js
原生js封装二级城市下拉列表的实现代码
Jun 16 #Javascript
jQuery获取剪贴板内容的方法
Jun 16 #Javascript
javascript作用域、作用域链(菜鸟必看)
Jun 16 #Javascript
全面理解JavaScript中的继承(必看)
Jun 16 #Javascript
深入浅析JS的数组遍历方法(推荐)
Jun 15 #Javascript
JavaScript对象数组排序实例方法浅析
Jun 15 #Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
Jun 15 #Javascript
You might like
PHP+MYSQL会员系统的开发实例教程
2014/08/23 PHP
PHP模块memcached使用指南
2014/12/08 PHP
PHP微信开发之查询微信精选文章
2016/06/23 PHP
Javascript下的keyCode键码值表
2007/04/10 Javascript
javascript学习基础笔记之DOM对象操作
2011/11/03 Javascript
js String对象中常用方法小结(字符串操作)
2012/01/27 Javascript
如何用js控制frame的隐藏或显示的解决办法
2013/03/20 Javascript
JavaScript前端图片加载管理器imagepool使用详解
2014/12/29 Javascript
easyui Draggable组件实现拖动效果
2015/08/19 Javascript
js脚本分页代码分享(7种样式)
2015/08/19 Javascript
jquery实现select选择框内容左右移动代码分享
2015/11/21 Javascript
layui选项卡效果实现代码
2017/05/19 Javascript
JS查找数组中重复元素的方法详解
2017/06/14 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
2017/10/01 Javascript
vue router动态路由下让每个子路由都是独立组件的解决方案
2018/04/24 Javascript
react同构实践之实现自己的同构模板
2019/03/13 Javascript
JSX在render函数中的应用详解
2019/09/04 Javascript
js获取 gif 的帧数的代码实例
2019/09/10 Javascript
VUE+node(express)实现前后端分离
2019/10/13 Javascript
如何基于javascript实现贪吃蛇游戏
2020/02/09 Javascript
[01:09:20]NB vs NAVI Supermajor小组赛A组 BO3 第二场 6.2
2018/06/03 DOTA
[48:51]完美世界DOTA2联赛PWL S2 Magma vs InkIce 第一场 11.28
2020/12/02 DOTA
python冒泡排序简单实现方法
2015/07/09 Python
python类的方法属性与方法属性的动态绑定代码详解
2017/12/27 Python
python将回车作为输入内容的实例
2018/06/23 Python
如何关掉pycharm中的python console(图解)
2019/10/31 Python
详解Python中Pyyaml模块的使用
2020/10/08 Python
python实现数据结构中双向循环链表操作的示例
2020/10/09 Python
CSS3中Animation属性的使用详解
2015/08/06 HTML / CSS
Ibatis如何调用存储过程
2015/05/15 面试题
Android笔试题总结
2014/11/29 面试题
学生自我评语
2015/01/04 职场文书
安全教育培训制度
2015/08/06 职场文书
无故旷工检讨书
2015/08/15 职场文书
2016反腐倡廉警示教育心得体会
2016/01/13 职场文书
Spring中的@Transactional的工作原理
2022/06/05 Java/Android