表达式和语句
eval( ) 只有一个参数
参数非字符串时,直接返回这个参数;
参数为字符串时,它把字符串当成JavaScript代码进行编译,编译失败则抛出语法错误,编译成功则执行代码,并返回最后一条语句的值,若没有值则返回undefined
eval()使用了调用它的变量的作用域环境
它接收的字符串参数,在作为单独的代码时,必须是有语义的,否则编译失败
delete运算符:用来删除对象的自由属性、数组的元素,
删除属性后,属性将不存在,而删除数组元素后,会在数组内留下一个值为undefined的洞,数组长度不变;
尝试删除无法删除的属性返回false,若删除成功或删除操作不起作用时均返回true
delete无法删除:
1、内置核心、客户端属性不能删除;
2、用户通过var语句声明的变量不能删除;
3、通过function语句定义的函数和函数参数也不能删除
4、不可配置的属性无法删除
void运算符:void的操作数会正常执行,但会忽略操作数的值并返回undefined
void有如下作用:
* 通过采用void 0取undefined比采用字面上的undefined更靠谱更安全可靠;
* 填充<a>的href确保点击时不会产生页面跳转; 填充<image>的src,确保不会向服务器发出垃圾请求。href='javascript:void(0);'
不管break语句带不带标签,它的控制权都无法越过函数的边界!即不能从函数内部跳转到函数外部
Object.create( p , [x] )
该方法创建一个以对象p为原型的新对象,并返回该对象,可选的x是用以对对象属性的进一步描述;
var p1 = Object.create(p); //新建对象p1,它继承自对象p(以p为原型)
即p1的prototype(原型)属性的值为p
P.x和P['x']的区别:
P.x访问时,只能固定访问属性名为x的属性;
而P['x']比较灵活,可以动态的修改[ ]内字符串的值,来访问不同的属性,如P['x'+i]
逻辑与“&&”,逻辑或”||“的妙用:短路行为
通过&&,保证了读取length属性之前,book和book.subtitle都为真值,即为对象
var len = book && book.subtitle && book.subtitle.length;
保证x的值为:从a~f中,第一个为真值的值,忽略后面的真值
var x = a || b || c || d || e || f;
if( ! buy){...} 当buy为假值时,执行{...}
通过! ! x来得到一个等价的布尔值
以上就是小编为大家带来的JavaScript学习笔记整理_关于表达式和语句的全部内容了,希望对大家有所帮助,多多支持~
javascript,表达式
更新动态
- 刘欢《雨中的树(新歌加精选)2CD》德国HD24K金碟[WAV+CUE]
- 郑源 《世间情歌》6N纯银SQCD[WAV+CUE][1G]
- 群星《粤潮2HQII》头版限量编号[低速原抓WAV+CUE][991M]
- 群星《2023好听新歌21》十倍音质 U盘音乐[WAV分轨][1G]
- 《热血传奇》双11感恩回馈 超值狂欢30天
- 原神5.2版本活动汇总 5.2版本活动有哪些
- 张敬轩.2010-NO.ELEVEN【环球】【WAV+CUE】
- 黄丽玲.2006-失恋无罪【艾回】【WAV+CUE】
- 阿达娃.2024-Laluna【W8VES】【FLAC分轨】
- 宝可梦大集结段位等级划分表大全 大集结段位一览
- 龙腾世纪影障守护者工坊与装备如何升级 工坊与装备升级说明
- 龙腾世纪影障守护者全成就攻略分享 龙腾世纪4全成就列表一览
- 《剑星》更新四套全新战衣!
- 卡普空老将伊津野英昭宣布入职腾讯光子 开发3A动作
- 38岁梅根·福克斯官宣怀孕:将迎来第四个孩子