博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript权威设计--JavaScript类型,值,变量(简要学习笔记三)
阅读量:6070 次
发布时间:2019-06-20

本文共 1194 字,大约阅读时间需要 3 分钟。

1.负号是一元求反运算
如果直接给数字直接量前面添加负号可以得到他们的负值
 
 
2.JavaScript中的运算超出了最大能表示的值不会报错,会显示Infinity。
超出最小也不报错,会显示-Infinity。
运算出的结果如果是个非数字的值得时候,用NaN表示。
 
3.字符串直接量拆分成数行
ECMAScript3中,字符串直接量必须下载一行中,而在ECMScript中,字符串直接量可以拆分成数行,每行必须以反斜线(\)介绍。
如:“two\lines”
      "one\     //三行写完一个字符串
       two\
       three"
 
4.JavaScript中夹杂html代码的时候建议使用各自独立的引号风格 。
 
5.不只有数组可以通过索引去访问,字符串也可以
如:
var a="hello";a[0]    //"h"    (返回 string)a.length   //5    (返回 number)
 
6.RegExp的直接量表示法:/^html/   //匹配以html开始的字符串
 
7.null与undefined
null是js的关键字。描述“空值”
undefined表示更深层的“空值”,表示变量没有初始化
 
8.var global=this;//定义一个引用全局对象的全局变量值
客户端JavaScript中,在其表示的浏览器窗口中的所有JavaScript中,window对象充当了全局对象。这个全局window对象有一个属性引用其自身,它可以代替this来引用全局对象。
 
9.对象的问题
var s="test";s.b=4;var a=s.b;    //a的值会是什么?
答案是:a的值是undefined
 
好,我们来说一下这个过程:
var s="test";    //创建一个字符串s.b=4;    //给s设置一个属性为4(这时候会创建一个临时字符串对象,并给b属性赋值为4,赋值完成后立即销毁这个对象s)var a=s.b;    //这时s这个对象已经不存在
 
你会问,为什么?
 
s是字符串既然不是对象,为什么他能点(.)的出来属性呢?因为js中只要引用了字符串s的属性,js就会将字符串值通过调用new String(s)的方式创建一个对象(或说转换成对象)。要清楚这个创建的一个对象是临时的,而且也不是s这个原本的字符串。但是我们看上去的时候却是好像是s点(.)出来的。s.b这种修改属性只是发生在临时对象身上,而这个临时的对象并未继续保留下来(也就是修改之后立即销毁)。
var s="test"; var S=new String(s);       //这是显式的创建s的对象console.log(s==S)    //true  等于运算符任务两者相等 console.log(s===S)    //false    全等运算符认为不等 不等的是类型

转载地址:http://fufgx.baihongyu.com/

你可能感兴趣的文章
[译] 可维护的 ETL:使管道更容易支持和扩展的技巧
查看>>
### 继承 ###
查看>>
数组扩展方法之求和
查看>>
astah-professional-7_2_0安装
查看>>
函数是对象-有属性有方法
查看>>
uva 10107 - What is the Median?
查看>>
Linux下基本栈溢出攻击【转】
查看>>
c# 连等算式都在做什么
查看>>
使用c:forEach 控制5个换行
查看>>
java web轻量级开发面试教程摘录,java web面试技巧汇总,如何准备Spring MVC方面的面试...
查看>>
根据调试工具看Vue源码之组件通信(一)
查看>>
Thrift RPC 系列教程(5)—— 接口设计篇:struct & enum设计
查看>>
斯坦福-随机图模型-week1.5
查看>>
灵活的运用Model类
查看>>
hadoop 之分布式安装
查看>>
使用ansible工具部署ceph
查看>>
linux系列博文---->深入理解linux启动运行原理(一)
查看>>
Android反编译(一) 之反编译JAVA源码
查看>>
结合当前公司发展情况,技术团队情况,设计一个适合的技术团队绩效考核机制...
查看>>
python-45: opener 的使用
查看>>