分享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 相关文章推荐
发现的以前不知道的函数
Sep 19 Javascript
asp.net和asp下ACCESS的参数化查询
Jun 11 Javascript
JavaScript 选中文字并响应获取的实现代码
Aug 28 Javascript
JS仿Windows开机启动Loading进度条的方法
Feb 26 Javascript
IE6兼容透明背景图片及解决方案
Aug 19 Javascript
jquery点击切换背景色的简单实例
Aug 25 Javascript
JS数组排序方法实例分析
Dec 16 Javascript
Centos6.8下Node.js安装教程
May 12 Javascript
Vue 父子组件的数据传递、修改和更新方法
Mar 01 Javascript
vue动态删除从数据库倒入列表的某一条方法
Sep 29 Javascript
vue-cli3.0实现一个多页面应用的历奇经历记录总结
Mar 16 Javascript
Vue实现移动端拖拽交换位置
Jul 29 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实现让页面只能被百度gogole蜘蛛访问的方法
2009/12/29 PHP
php常用文件操作函数汇总
2014/11/22 PHP
PHP SESSION的增加、删除、修改、查看操作
2015/03/20 PHP
php gd等比例缩放压缩图片函数
2016/06/12 PHP
解决安装WampServer时提示缺少msvcr110.dll文件的问题
2017/07/09 PHP
thinkPHP5.1框架使用SemanticUI实现分页功能示例
2019/08/03 PHP
解决在laravel中leftjoin带条件查询没有返回右表为NULL的问题
2019/10/15 PHP
Laravel 5.5 实现禁用用户注册示例
2019/10/24 PHP
图片延迟加载的实现代码(模仿懒惰)
2013/03/29 Javascript
二叉树的非递归后序遍历算法实例详解
2014/02/07 Javascript
再谈Jquery Ajax方法传递到action(补充)
2014/05/12 Javascript
js在数组中删除重复的元素自保留一个(两种实现思路)
2014/08/22 Javascript
基于JS实现EOS隐藏错误提示层代码
2016/04/25 Javascript
微信小程序 获取相册照片实例详解
2016/11/16 Javascript
jQuery插件DataTable使用方法详解(.Net平台)
2016/12/22 Javascript
在小程序中推送模板消息的实现方法
2019/07/22 Javascript
微信小程序实现轨迹回放的示例代码
2019/12/13 Javascript
JS数组方法shift()、unshift()用法实例分析
2020/01/18 Javascript
element el-table表格的二次封装实现(附表格高度自适应)
2021/01/19 Javascript
深入解析Python中的descriptor描述器的作用及用法
2016/06/27 Python
Python实现动态加载模块、类、函数的方法分析
2017/07/18 Python
python使用正则表达式的search()函数实现指定位置搜索功能
2017/11/10 Python
Python实现多属性排序的方法
2018/12/05 Python
Python实现多进程的四种方式
2019/02/22 Python
Python While循环语句实例演示及原理解析
2020/01/03 Python
python继承threading.Thread实现有返回值的子类实例
2020/05/02 Python
python opencv 实现读取、显示、写入图像的方法
2020/06/08 Python
python接入支付宝的实例操作
2020/07/20 Python
在 Python 中使用 MQTT的方法
2020/08/18 Python
python+flask编写一个简单的登录接口
2020/11/13 Python
合同意向书范本
2014/07/30 职场文书
教代会闭幕词
2015/01/28 职场文书
php 防护xss,PHP的防御XSS注入的终极解决方案
2021/04/01 PHP
Java基础之详解HashSet的使用方法
2021/06/30 Java/Android
7个关于Python的经典基础案例
2021/11/07 Python
Vue深入理解插槽slot的使用
2022/08/05 Vue.js