分享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 相关文章推荐
很酷的javascript loading效果代码
Jun 18 Javascript
一个js导致的jquery失效问题的解决方法
Nov 27 Javascript
js清理Word格式示例代码
Feb 13 Javascript
JS+CSS实现可拖拽的漂亮圆角特效弹出层完整实例
Feb 13 Javascript
JS实现定时自动关闭DIV层提示框的方法
May 11 Javascript
莱鸟介绍window.print()方法
Jan 06 Javascript
angular-ui-sortable实现可拖拽排序列表
Dec 28 Javascript
jQuery实用密码强度检测
Mar 02 Javascript
Javascript的console['']常用输入方法汇总
Apr 26 Javascript
vue实现Input输入框模糊查询方法
Jan 29 Javascript
node crawler如何添加promise支持
Feb 01 Javascript
es6中let和const的使用方法详解
Feb 24 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中计算字符串相似度的函数代码
2012/12/29 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
PHP数组与字符串互相转换实例
2020/05/05 PHP
可缩放Reloaded-一个针对可缩放元素的复用组件
2007/03/10 Javascript
js获取url参数的使用扩展实例
2007/12/29 Javascript
JS格式化数字保留两位小数点示例代码
2013/10/15 Javascript
JS小功能(onmouseover实现选择月份)实例代码
2013/11/28 Javascript
jQuery监控文本框事件并作相应处理的方法
2015/04/16 Javascript
javascript中使用new与不使用实例化对象的区别
2015/06/22 Javascript
JavaScript与jQuery实现的闪烁输入效果
2016/02/18 Javascript
Jquery判断form表单数据是否变化
2016/03/30 Javascript
Bootstrap安装环境配置教程分享
2016/05/27 Javascript
Node.js利用Net模块实现多人命令行聊天室的方法
2016/12/23 Javascript
Vuejs 2.0 子组件访问/调用父组件的方法(示例代码)
2018/02/08 Javascript
vue element-ui table表格滚动加载方法
2018/03/02 Javascript
解决vue axios的封装 请求状态的错误提示问题
2018/09/25 Javascript
javascript实现计算指定范围内的质数示例
2018/12/29 Javascript
高性能js数组去重(12种方法,史上最全)
2019/12/21 Javascript
Python中字典创建、遍历、添加等实用操作技巧合集
2015/06/02 Python
Python 将RGB图像转换为Pytho灰度图像的实例
2017/11/14 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
2018/01/04 Python
简单了解django orm中介模型
2019/07/30 Python
详解Python绘图Turtle库
2019/10/12 Python
Python中文分词库jieba,pkusegwg性能准确度比较
2020/02/11 Python
用Python生成HTML表格的方法示例
2020/03/06 Python
Python在centos7.6上安装python3.9的详细教程(默认python版本为2.7.5)
2020/10/15 Python
Python tkinter实现日期选择器
2021/02/22 Python
俄罗斯领先的移动和数字设备在线商店:Svyaznoy.ru
2020/12/21 全球购物
小学生评语大全
2014/04/18 职场文书
入党积极分子学习党的纲领思想汇报
2014/09/13 职场文书
村党支部书记个人对照材料汇报
2014/10/26 职场文书
2015年转正工作总结范文
2015/04/02 职场文书
部门经理助理岗位职责
2015/04/13 职场文书
酒店工程部主管岗位职责
2015/04/16 职场文书
Mysql关于数据库是否应该使用外键约束详解说明
2021/10/24 MySQL
磁贴还没死, 微软Win11可修改注册表找回Win10开始菜单
2021/11/21 数码科技