位置: 编程技术 - 正文

每日十条JavaScript经验技巧(二)(每日十条简短新闻)

编辑:rootadmin

推荐整理分享每日十条JavaScript经验技巧(二)(每日十条简短新闻),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:每日十条新闻并带心语,每日十条笑话,每日十条笑话段子,每日十条笑话经典语录,每日十条新闻,每日十条中医用药经验,每日十条新闻,每日十条笑话大全,内容如对您有帮助,希望把文章链接给更多的朋友!

1. 非数值类型转数值

使用Number()转换时:

undefined会转为NaN 如果字符串以0开始,浏览器会忽略前导0,不会按照八进制进行转换 如果字符串以0x开始,浏览器会按照十六进制转化为十进制返回 如果字符串有字符,除(+,-,.)外都会转为NaN,十六进制时,字符串包含任何非数字字符都返回NaN 如果是对象转换,则对象先使用valueof(),然后按照规则转换。如果无valueOf方法,则调用toString方法,再转换。

使用parseInt()转换时:

parseInt会忽略前导空格,直到第一个非空字符开始解析,如果为非数字或正负号,则返回NaN。如果为数字则一直解析到第一个非数字为止。注:在parseInt中小数点不是有效的数字字符 parseInt能识别十进制,八进制和十六进制,但是在解析八进制时,ECMAScript 3 和ECMAScript 5存在分歧,ECMAScript 3会将转化为,但是ECMAScript 5会转换为。 使用parseInt的第二个参数

使用parseFloat()转换时:

parseFloat和parseInt的第一个区别在于它在解析字符串是是遇到一个无效的浮点数值字符为止,比parseInt多了.解析十六进制数值时返回0

parseFloat函数没有第二个可以指定基数的参数,所以只解析十进制值。如果字符串是个整数,则返回整数而不是浮点数var num = parseFloat("2.e7"); //

2. 使用toString()输出不同进制的数值

此条适用于整数,我们可以用toString()返回任意进制的整数。

3. 位操作符时注意NaN和Infinity

在对NaN和Infinity使用位操作符时,这两个数值都会被当成0来处理。 如果对于非数值应用位操作符,会先使用Number()函数将该值转换为一个数值。

还有一点要注意的就是负数的无符号右移,无符号右移是以0来填充空位,而不像有符号右移以符号位填充空位,所以对正数的无符号右移和有符号右移结果相同,但对负数就不同了。无符号右移操作会把负数的二进制码当成正数的二进制码,而且负数是以补码形式表示,因此会导致无符号右移后的结果相差非常大。

4. 特殊的数值运算

对于数值运算,如果有一个操作数为NaN,则结果为NaN。对非数值应用使用一元加操作或减操作(+,-,正负号),如果该值无法转换为数值(使用Number()方式转换),则返回NaN。

Infinity和0相乘等于NaN,和非0数相乘为Infinity和-Infinity,取决于乘数的正负号。Infinity和Infinity相乘等于Infinity。

零除零为NaN,非零数除以零为Infinity或-Infinity。Infinity除以Infinity为NaN对于取模运算,下面等式成立:

加法运算:如果两个操作数都是字符串则+变为字符串连接。如果一个为字符串,一个为数值,将数值转换为字符串,然后连接字符串,如果一个操作数是对象,布尔值则先调用它们的valueOf方法,如无,在调用toString方法。再根据返回值类型,判断+号应该连接字符串还是相加。

每日十条JavaScript经验技巧(二)(每日十条简短新闻)

减法运算:减法运算和加法运算十分相似,关于对象的处理也是一样,所以不再说明。

5. 关系操作符的使用

关系操作符就是小于(<)、大于(>)、小于等于(<=)和大于等于(>=)

只要有一个数值,就会执行数值比较,另一个不为数值,则转为数值。对象先用valueOf,后用toString。其实对象无论执行什么运算都是这样,有valueOf,则用valueOf返回值,否则使用toString返回值。两个都为字符串,则比较字符串的字符编码值(ASCII值)关于第一个还要注意,在一个时候字符串一个是数值时,字符串无法转数值时,即为NaN会出现如下情况

6. ==和===

在JavaScript中,如果等式两边类型不同,或者仅包含一个对象,那么比较会分为两种情况,转型后比较和不转型直接比较。 ==是先转换在比较,===是不转换直接比较。 对于来说===,只要类型不相等就返回false。 而对于==来说,分为如下几种情况:

true会转换为1,false会转换为0。字符串和数值比较,字符串会转换为数值。如果等式两边只有一个对象,这个对象会调用valueOf得到基本类型,如无valueOf方法调用toString方法。如果两边都是对象则不转型。

下面是特殊的比较情况

7. for-in语句

for-in语句输出顺序不可预测,次序可能因为浏览器不同而有所差异。要迭代的变量未null或undefined时,ECMAScript 5下不再抛出错误而是不执行循环体。如果想向前兼容,则在循环前判断不为null或undefined。

8. swithc语句

switch可以使用任何数据类型。case的值可以是常量,变量和表达式。switch语句在比较值时使用的是全等比较操作符(===)。

9 函数的使用

函数内没有return语句或return不带任何返回值,则函数都会返回undefined。函数的定义时和函数的调用时参数不比保持一致。换句话说两种参数(形参和实参)并没有任何联系。函数定义时提供的变量只是使用时较为方便,就算不定义也可以获得传递给函数的参数(通过arguments[])。

形参和arguments[]之间的关系如下,注意严格模式和非严格模式区别。

. 函数参数的使用

在定义函数时,我们会把用到的参数写到函数的括号内,但是在有多个可选参数的情况下就会不够灵活,这个时候可以使用对象封装多个可选参数。

正则表达式(语法篇推荐) 正则表达式的构造摘要构造匹配字符x字符x\反斜线字符n带有八进制值0的字符n(0=n=7)nn带有八进制值0的字符nn(0=n=7)mnn带有八进制值0的字符mnn(0=m=3、

老生常谈 关于JavaScript的类的继承 其实最一开始学JS的时候就看过继承的实现。当时只是去试着理解从书上看来的代码段而已。今天又重新思考了一下,感觉这是一个思维探索演进的结果

JavaScript程序中实现继承特性的方式总结 概述JavaScript的所有对象,都有自己的继承链。也就是说,每个对象都继承另一个对象,该对象称为原型(prototype)对象。只有null除外,它没有自己的原

标签: 每日十条简短新闻

本文链接地址:https://www.jiuchutong.com/biancheng/370141.html 转载请保留说明!

上一篇:每日十条JavaScript经验技巧(一)(每日十条中医用药经验)

下一篇:正则表达式(语法篇推荐)(正则表达式语法 \d)

  • 企业所得税是什么意思
  • 出借包装物收到押金
  • 公司购买汽车的折旧年限
  • 其他收益里的政府补助免税吗
  • 金税盘服务费不能全额抵扣吗
  • 所得税的利润总额怎么计算
  • 连锁药店总部的首营资料
  • 赠送客户的商品怎么入账
  • 行政单位待处理财产损益要结转吗
  • 费用跨年入账所得怎么算
  • 一般企业和行政事业单位的资产负债表是否一样
  • 红字发票冲红步骤
  • 应交税费应交增值税的三级科目有哪些
  • 维修费用的税率
  • 社保行业费率是什么
  • 收回长期股权投资账务处理成本法
  • 积分兑换内容
  • 工会委员会开票信息
  • 生产成本包括哪三类
  • linux 密码重置
  • php和数据库
  • 代开的增值税怎么计提?
  • 错账的种类
  • php中的die
  • 化妆品与药品
  • 计提本月固定资产折旧,其中车间折旧额1100
  • 深入理解llvm
  • 西部大开发的主要政策措施是什么?
  • php限制访问频率
  • php生成颜色面板
  • 递归 php
  • 外经证核销期限是多久
  • 智能驾驶adas概念股龙头
  • lama羊驼
  • ai的工具介绍
  • mac apache php
  • 注销对公账户要去原支行吗
  • 每个月计提折旧的分录
  • PHP魔术方法的作用
  • notepad+v
  • python列表的创建和操作
  • 差旅费报销金额大于实际发生金额
  • 记账凭证的总账科目和明细科目
  • 丢失增值税发票已报税证明单取消
  • 先开销项发票
  • 预售期的房子是否可以买卖
  • 工程进度节点奖励考核
  • 委托加工物资的加工费计入什么科目
  • 结转成本涉及的科目
  • 领用自产产品用于固定资产
  • 什么是开办费包括
  • sql server 错误
  • sql语句百度百科
  • mysql无法配置
  • sql刷新快捷键
  • mysql 行转列 列转行
  • ubuntu安装office2019
  • 双系统怎么卸载系统
  • diskgenius分区linux
  • xp系统如何更改开机启动项
  • mce文件是什么软件
  • Win7怎么开启存储感知
  • cocos2djs
  • 怎样判断滚动和滑动
  • 如何解决android代码红线
  • opengl纹理贴图图片位置
  • 微信小程序实现微信支付
  • jquery添加id属性
  • shell脚本取n天前的日期
  • js 显示当前时间
  • js实现超精简的快捷键
  • 安卓layout布局
  • android布局文件详解
  • python 连接pg
  • python3 functools
  • 甘肃增值税发票查验平台官网
  • 税控系统技术维护费抵税怎么申报
  • 地税局契税发票编号查询
  • 国家税务局全国增值税
  • 在深圳月薪8000是什么水平
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设