-
对象属性标签:wiritable(可写),enumeriable(可枚举),configurable(除了wiritable由true到false总是可以的,属性标签们是否可再被修改,可删除,可配置),value,get/set
对象有属性,原型,class,extensible可扩展性
查看全部 -
严格模式总结:向上兼容
查看全部 -
严格模式下:
查看全部 -
严格模式:一种特殊的执行模式,修复了部分语言的不足,提供更强的错误检查,并增强安全性
不能使用with,会报错
不允许为声明的变量被赋值referencrError.
arguments变为参数的静态副本,不影响参数值(arguments是浏览器传递给函数的隐式参数,用来封装实参,是个对象,另外还有this(函数的上下文对象)),但是由于共享这个特性,也是有例外的:如下图:
上图删除函数参数,非严格模式返回False,严格模式下报错
查看全部 -
with语句:js不推荐使用,而且严格模式下已经禁止使用
查看全部 -
switch语句:
查看全部 -
for ...in 语句:
注意;1.属性顺序不确定
2.属性描述器的enumerable为false时,属性不会出现
3.for in对象属性受原型链影响
:
查看全部 -
function语句:函数声明(预先处理,函数前置),而函数表达式不是
体现在函数调用上:
查看全部 -
try catch嵌套
异常会寻找最近的catch处理
查看全部 -
try catch语句:三种形式,try catch,try finally,try catch finally;
先执行try,错误就执行catch,true就忽略catch,finally是不管对错都执行。
查看全部 -
块语句:没有块级作用域!有全局作用域,函数作用域,还有等等。。
var 语句:var a=b=0;在函数中这么写,且调用函数,那么a为局部变量,b 为全局变量。var a=b=c=d=;a局部,b,c,d全局变量
查看全部 -
1.delete obj.x//删除对象的属性
但是下面的情况delete无效:
var obj={};
Object.defineProperty(obj,'x',{
configurable:false,
value:1
});
delete obj.x;//返回configurable的值false,删除无效,i还是1
configurable标签的值为true的话才可以delete
2.in 运算符
window.x=1;
'x' in window;//true判断对象中有无这个属性
3.逗号运算符:var i=(0,9,3);//i=3;取最右边的
4.
5.this运算符
6.void运算符
特殊运算符
查看全部 -
javascript
弱类型特性:
"32"+ 32 = 3232
"32" - 32 = 0
原始类型(5) 对象类型(1)
number string boolean null undefined
object
object :Function/Array/Date...
“1.23” == 1.23 字符串转成数字类型
null == undefined
number == string 转number
boolean == ? 转number
object == number | string 尝试对象转化为基本类型
查看全部 -
https://www.cnblogs.com/libin-1/p/5901738.html
javascript的toString方法
查看全部 -
sort()方法用于对数组的元素的排序。
语法:arrayObject.sort(sortby)
sortby:可选。规定排序顺序。必须是函数。
返回值,对数组的引用,请注意,数组在原数组上进行排序,不生成副本。
如果调用该方法时没有使用参数,将按字母排序对数组中的元素进行排序,说得精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应该把数组的元素转换成字符串(如果有必要),以便进行比较。如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序,比较函数应该具有两个参数a和b,其返回值如下:
若a小于b,在排序后的数组中a应该出现在b之前,则返回一个小于0的值。
若a等于b,则返回值0。
若a大于b,则返回一个大于0的值。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
</body>
<script type="text/javascript">
alert()
var arr1 = new Array(6);
arr1[0] = "George";
arr1[1] = "John";
arr1[2] = "Thomas";
arr1[3] = "James";
arr1[4] = "Adrew";
arr1[5] = "Martin";
document.write(arr1 + "<br />");
document.write(arr1.sort() + "<br />");
var arr2 = new Array(6);
arr2[0] = "10";
arr2[1] = "5";
arr2[2] = "40";
arr2[3] = "25";
arr2[4] = "1000";
arr2[5] = "1";
document.write(arr2 + "<br />");
document.write(arr2.sort() + "<br />");
//上面的代码没有按照数值的大小对数字进行排序,要实现这一点,就必须使用一个排序函数:
function sortNumber(a, b) {
return a - b;
var arr3= new Array(6);
arr3[0] = "10";
arr3[1] = "5";
arr3[2] = "40";
arr3[3] = "25";
arr3[4] = "1000";
arr3[5] = "1";
document.write(arr3 + "<br />");
document.write(arr3.sort(sortNumber)+ "<br />");
</script>
</html>
查看全部
举报