分享Javascript实用方法二


Posted in Javascript onDecember 13, 2015

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

承接上一篇,

Object

keys

object的keys方法能够获取一个给定对象的所有键(key/属性名)并以数组的形式返回。这个方法可以用于键的筛选、匹配等。

var basket = {
strawberry: 12,
banana: 20,
apple: 30,
juice: 20
};
console.log(Object.keys(basket)); 
//[ 'strawberry', 'banana', 'apple', 'juice' ]

create

create方法用于创建一个新的对象,可选参数(proto, [ propertiesObject ]),第一个为原型,比如Array.prototype之类的,第二个为需要给新建对象的一些新属性之类的,这个参数对象的属性名将是新建对象的属性,值则是属性描述符(value、writable、configurable等)。

var o = Object.create({}, {p: {value: 42}});
var O = Object.create({}, {p: {value: 66, writable: true, enumerable: true}});
console.log(o.p); //42
console.log(O.p); //66
o.p = 20;
O.p = 80;
console.log(o.p); //42
console.log(O.p); //80

属性描述符中writable默认为false,因此o.p即便在后来重新赋值也是不能改变其值的,而O.p则能够在后来改变值,此外,create方法proto必须传入相应参数,否则会报错TypeError,当然以上代码在严格模式下也会报错,因为o.p被重写- -

assign

assign方法,es6的新特性,支持传参(target, …sources),用于将任意多个源对象的键值对添加的目标对象,类似于lodash的assign和underscore的extendOwn方法。

var boy = {handsome: true, rich: true}, girl = {cute: true, hair: 'long'};
var couples = Object.assign({}, boy, girl);
console.log(couples); //{ handsome: true, rich: true, cute: true, hair: 'long' }

assign方法常用于框架层面的数据处理,比如你定义了一个client用于发送HTTP请求,使用的时候获取接受到的参数之外自己可能得加上什么默认的属性。

Number

isNaN

Number的isNaN方法用来判断传入值是否是NaN的值,与全局的isNaN方法不同的是它不会强制将传入参数转化为数字类型,只有在参数是真正的数字类型,且值为 NaN 的时候才会返回 true。不过就自己而言全局的isNaN用的多一点,就用来判断字符串是不是只包含数字,

console.log(isNaN('123f')); //true
console.log(isNaN('123')); //true

此外,isFinite(value)方法用于判断传入参数是否是有穷数,isInteger(value)方法用于判断传入参数是否是整数。

toFixed

toFixed方法用来将数字转化为特定的字符串,支持传入参数(digits),0 < digits <= 20,在转换的时候会自动进行四舍五入以及0补充。

var cool = 666.666;
console.log(cool.toFixed(1)); //666.7
console.log(cool.toFixed(6)); //666.666000

这段时间发生了很多事情,从待了116天的杭州来到北京,开始一段新的工作与生活。不舍、惆怅、激动、兴奋等情绪交织缠绵…七匹狼,认识了其余六狼,很珍惜这段大家一起努力一起嗨皮的日子,尤记得夜爬宝石山,俯瞰西湖,English poor,哈哈哈…

ps:javascript split() 定义和用法

split() 方法用于把一个字符串分割成字符串数组。

语法

stringObject.split(separator,howmany)

参数 描述
separator 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
howmany 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
Javascript 相关文章推荐
用JS判断IE版本的代码 超管用!
Aug 09 Javascript
使用jQuery清空file文件域的解决方案
Apr 12 Javascript
jquery UI Datepicker时间控件的使用方法(基础版)
Nov 07 Javascript
JS实现左右无缝轮播图代码
May 01 Javascript
有关jQuery中parent()和siblings()的小问题
Jun 01 Javascript
Bootstrap table表格简单操作
Feb 07 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
Jul 30 Javascript
简单的三步vuex入门
May 20 Javascript
如何在vue里添加好看的lottie动画
Aug 02 Javascript
JS实现简单日历特效
Jan 03 Javascript
jQuery 选择器用法实例分析【prev + next】
May 22 jQuery
js 实现验证码输入框示例详解
Sep 23 Javascript
JavaScript判断按钮被点击的方法
Dec 13 #Javascript
jquery插件uploadify实现带进度条的文件批量上传
Dec 13 #Javascript
JavaScript代码判断点击第几个按钮
Dec 13 #Javascript
JavaScript模块化开发之SeaJS
Dec 13 #Javascript
node.js require() 源码解读
Dec 13 #Javascript
JavaScript 模块的循环加载实现方法
Dec 13 #Javascript
javascript日期验证之输入日期大于等于当前日期
Dec 13 #Javascript
You might like
在PHP中利用XML技术构造远程服务(下)
2006/10/09 PHP
PHP函数篇之掌握ord()与chr()函数应用
2011/12/05 PHP
探讨fckeditor在Php中的配置详解
2013/06/08 PHP
关于PHPDocument 代码注释规范的总结
2013/06/25 PHP
PHP unset函数原理及使用方法解析
2020/08/14 PHP
JavaScript高级程序设计 读书笔记之九 本地对象Array
2012/02/27 Javascript
使用FlexiGrid实现Extjs表格效果方法分享
2014/12/16 Javascript
js实现简单折叠、展开菜单的方法
2015/08/28 Javascript
jQuery插件扩展extend的简单实现原理
2016/06/24 Javascript
jQuery实现6位数字密码输入框
2016/12/29 Javascript
深入理解JavaScript中的尾调用(Tail Call)
2017/02/07 Javascript
jQuery Ajax前后端使用JSON进行交互示例
2017/03/17 Javascript
vue-router 中router-view不能渲染的解决方法
2017/05/23 Javascript
JS选取DOM元素常见操作方法实例分析
2018/12/10 Javascript
js实现简单点赞操作
2020/03/17 Javascript
jQuery实现简单弹幕制作
2020/12/10 jQuery
python动态监控日志内容的示例
2014/02/16 Python
详解python中requirements.txt的一切
2017/03/03 Python
python模块之sys模块和序列化模块(实例讲解)
2017/09/13 Python
浅谈pandas用groupby后对层级索引levels的处理方法
2018/11/06 Python
Python3爬虫之自动查询天气并实现语音播报
2019/02/21 Python
用python写一个定时提醒程序的实现代码
2019/07/22 Python
利用pandas合并多个excel的方法示例
2019/10/10 Python
Python基于数列实现购物车程序过程详解
2020/06/09 Python
python中使用asyncio实现异步IO实例分析
2021/02/26 Python
.NET方向面试题
2014/11/20 面试题
大专计算机个人求职的自我评价
2013/10/21 职场文书
初中生学习生活的自我评价
2013/11/20 职场文书
实习生求职自荐信
2014/02/07 职场文书
库房管理员岗位职责
2014/03/09 职场文书
委托书范本
2014/04/02 职场文书
干部个人对照检查材料
2014/08/25 职场文书
嘉宾邀请函
2015/01/31 职场文书
简爱电影观后感
2015/06/10 职场文书
2016大学优秀学生干部事迹材料
2016/03/01 职场文书
小型企业的绩效考核制度模板
2019/11/21 职场文书