js学习阶段总结
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);//
with语句:
var obj = {
search : "st" ,
name : "lala",
url : "www.123.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学习阶段总结的更多相关文章
- [JS学习笔记]Javascript事件阶段:捕获、目标、冒泡
当你在浏览器上点击一个按钮时,点击的事件不仅仅发生在按钮上,同时点击的还有这个按钮的容器元素,甚至也点击了整个页面. 事件流 事件流描述了从页面接收事件的顺序,但在浏览器发展到第四代时,浏览器开发团队 ...
- Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G
code&monkey Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件 ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- js学习之变量、作用域和内存问题
js学习之变量.作用域和内存问题 标签(空格分隔): javascript 变量 1.基本类型和引用类型: 基本类型值:Undefined, Null, Boolean, Number, String ...
- 【Knockout.js 学习体验之旅】(3)模板绑定
本文是[Knockout.js 学习体验之旅]系列文章的第3篇,所有demo均基于目前knockout.js的最新版本(3.4.0).小茄才识有限,文中若有不当之处,还望大家指出. 目录: [Knoc ...
- 【Knockout.js 学习体验之旅】(2)花式捆绑
本文是[Knockout.js 学习体验之旅]系列文章的第2篇,所有demo均基于目前knockout.js的最新版本(3.4.0).小茄才识有限,文中若有不当之处,还望大家指出. 目录: [Knoc ...
- 【Knockout.js 学习体验之旅】(1)ko初体验
前言 什么,你现在还在看knockout.js?这货都已经落后主流一千年了!赶紧去学Angular.React啊,再不赶紧的话,他们也要变out了哦.身旁的90后小伙伴,嘴里还塞着山东的狗不理大蒜包, ...
- js学习篇1--数组
javascript的数组可以包含各种类型的数据. 1. 数组的长度 ,直接用 length 属性; var arr=[1,2,3]; arr.length; js中,直接给数组的length赋值是会 ...
- Vue.js学习笔记(2)vue-router
vue中vue-router的使用:
随机推荐
- 1104 文法产生这段C程序的推导过程
- 0302思考&回答
看完这两个网页,我们可以看出it行业始终是一门热门行业,在现在这个人潮汹涌的人才市场,面对严峻的就业形势,我们应该拿什么去参见招聘?人多而工作职位有限,这警醒我们必须拥有一技之长,否则则会被淘汰.如果 ...
- 敏捷冲刺DAY5
一. 每日会议 1. 照片 2. 昨日完成工作 发布和提供需求功能的实现 用户修改自己的信息 用户界面设计 管理员界面设计 3. 今日完成工作 4. 工作中遇到的困难 1.设置的背景无法显示. 2.一 ...
- Windows下基于http的git服务器搭建-gitstack
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Windows下基于http的git服务器搭建-gitstack 本文地址:http: ...
- 【week11】psp
本周psp 项目 内容 开始时间 结束时间 被打断 净时间 11.26(星期六) 看论文 psiBlast 9:00 12:00 5 175 11.28(星期一) 做作业 设计模式作业 ...
- 安装php先行库
libmcrypt libconv mhash ./configure --prefix=/usr/local mcrypt 安装完成后在当前目录还要 /sbin/ldconfig ./config ...
- 理解promise 02
1:promise是什么? 就是(链式)包装的回调函数. 2:语法 new Promise( function(resolve, reject) {...} /* executor */ ); exe ...
- hihocoder 1828 Saving Tang Monk II (DP+BFS)
题目链接 Problem Description <Journey to the West>(also <Monkey>) is one of the Four Great C ...
- BZOJ3622 已经没有什么好害怕的了(动态规划+容斥原理)
显然可以转化为一个阶梯状01矩阵每行每列取一个使权值和为k的方案数.直接做不可做,考虑设f[i][j]为前i行权值和至少为j,即在其中固定了j行选1的方案数.设第i行从1~a[i]列都是1且a[i]+ ...
- HDU3507 print article【斜率优化dp】
打印文章 时间限制:9000/3000 MS(Java / Others)内存限制:131072/65536 K(Java / Others) 总共提交:14521已接受提交:4531 问题描述 零有 ...