真的了解JS么?
1、setTimeout
setTimeout(function(){
}),1000)
setTimeout(function(num){
alert(num) //弹123
},1000,123)
2、拼接字符串(使用\)
document.body.innerHTML = '<div>div</div>\
<span>span</span>\
<p>p</p>\
55555'
3、console.log(在控制台输出样式%c)
var test = 123;
console.log(test); //正常输入log文字
console.log('%c'+test,'color:red;font-size:20px;background:blue') //输出有样式的文字
4、typeof(要通过调用的形式)
var test = 123;
typeof test //number
typeof(test)
//instanceof、in也有类似的使用方法
5、嵌套for循环(跳出整个循环)
for (var i=0;i<5;i++){
for (var j=0;j<1;j++){
if (i==3) break;
alert(i)
}
}
结果:0,1,2,4,其中3跳出里面的循环
cc : for (var i=0;i<5;i++){
for (var j=0;j<1;j++){
if (i==3) break cc;
alert(i)
}
}
结果:0,1,2
6、for (;;) 参数不写是可以的
for (var i=0;i<5;i++){
alert(i);
}
不写参数的改写如下:
var i=0;
for (;;) {
alert(i);
if (++i>=5) break;
}
7、call
call是用来更改this指向的,如果不写则表示window Object
8、insertBefore
if (!aLi.length) {
//第一个
oUl.appendChild(oLi)
} else {
oUl.insertBefore(oLi,aLi[0]) //若aLi[0]为空,则跟appendChild是一回事,因此可以直接写:oUl.insertBefore(oLi,aLi[0])
}
9、匿名函数自执行(位运算符也可以)
(function(){})()
~function(){}()
!function(){}()
+function(){}()
10、创建对象(可以省略括号)
function Aaa(){}
var test = new Aaa();
也可以 var test = new Aaa;
系统对象也可以的:
var arr = new Array;
真的了解JS么?的更多相关文章
- 你真的了解js伪数组吗?深入js伪数组
关于js伪数组 具有length属性: 按索引方式存储数据: 不具有数组的push().pop()等方法: 你可能知道怎么把伪数组转换为数组,但是你知道这里边的原理吗? 假如页面有一组li元素 < ...
- 真的了解js生成随机数吗
由js生成一切随机数的基础都是Math.random()这个方法,这个方法比较特别,生成的随机数落在的区间是[0,1),进行一次操作的话,js只能生成一个类似于[n,m)这样,左闭右开的区间.所以当有 ...
- 你真的理解js的赋值语句么
之前谢亮兄和我一起讨论的一个问题: var a = {}; a.x = a = 3; a 的值是什么. 其实当执行赋值语句的时候,js 的 = 左侧不是原始变量地址,而是一个新值.怎么理解这句话呢? ...
- 8个问题看你是否真的懂 JS
文章转载: https://juejin.im/post/5d2d146bf265da1b9163c5c9#heading-20 原文地址: https://dev.to/aman_singh/so- ...
- 你真的了解JS里的"new"吗?
我们常常喜欢用new关键字去创建一些对象如new Vue(),但是这个关键字的背后究竟做了什么其实没太多人去关注. 想象我们是苹果公司,要生产30部iPod,规定: 每台iPod都会有自己的ID 每台 ...
- 转:你真的懂得JS吗?
题目1 if (!("a" in window)) { var a = 1; } alert(a); // undefined, ~~~所有全局变量都是window的属性,声明语句 ...
- JavaScript的基础语法,你真的了解吗?
这篇文章是在我们熟悉了JS的基础语法后,很少有人去关注的一些细节部分.如果掌握了某些细节也许会对代码的改善有着非凡的作用.也许会使我们的代码更严谨,更高效. 1.if语句的条件 if条件中,括号里是布 ...
- js调用.net后台事件,和后台调用前台等方法以及js调用服务器控件的方法
http://blog.csdn.net/deepwishly/article/details/6670942 ajaxPro.dll基础教程(前台调用后台方法,后台调用前台方法) 1. javaS ...
- 关于JS的return false
之前真的不知道JS里的return false 还能跳出事件. 今天在修改BUG的时候,用到了这个,就去查了一下,为了加深记忆在此处做个总结. retrun true: 返回正确的处理结果. retu ...
随机推荐
- Effective C++ 读书总结
(中文第三版 侯捷 译) 这本书在C++领域也是大名鼎鼎,在微博看到有人说,如果以前学过C语言,那只需花一天时间把 Effective C++ 看一遍,然后再看 leveldb代码(http://t. ...
- Build FFmpeg for iOS
FFmpeg Build Instructions MAC 10.8 or better Copy ffmpeg-2.0.tar.bz2 (https://ffmpeg.org/releases/ff ...
- ArcGIS多面体(multipatch)解析(一)
从几何学的角度来说,再复杂的三维形状都可以通过足够多,足够小的三角形组合起来表达.比如矩形可以表达成两个三角形,如下图: 圆柱形可以由多个三角形排列而成: 但ArcGIS中的多面体构成并没有采用这种“ ...
- Object-c学习之路六(oc字符串文件读写)
// // main.m // NSString // // Created by WildCat on 13-7-25. // Copyright (c) 2013年 wildcat. All ri ...
- Unity3d物体模型(实现旋转缩放平移自动旋转)
基本功能实现:物体通过鼠标左键上下移动,中间键缩放.右键旋转,30秒没操作,物体自动旋转 实例代码: using UnityEngine; using System.Collections; publ ...
- 消除Switch...Case的过程
http://www.cnblogs.com/happyframework/p/3300170.html 目录 备注需求第一遍代码(重复的代码)第二遍代码(消除重复)备注 备注返回目录 不要重复自己, ...
- 基于c#+xaml的前台采用IE的js引擎写后台
基于c#+xaml的前台采用IE的js引擎写后台的猜想 参考上一篇文章 基于js的开发wp8界面的猜想知道可以使用 js的window.external.notify调用c# c#可以用InvokeS ...
- uploadify的使用
uploadify的使用 课程设计需要实现上传文件模块,本来ASP.NET是有内置的控件,但是ASP.NET MVC没有,所以就有两种方法:自定义和采用第三方插件.由于时间的关系,故采用第三方插件:u ...
- enode框架step by step之消息队列的设计思路
enode框架step by step之消息队列的设计思路 enode框架系列step by step文章系列索引: enode框架step by step之开篇 enode框架step by ste ...
- Drupal与大型网站架构(译)- Large-Scale Web Site Infrastructure and Drupal
Drupal与大型网站架构(译)- Large-Scale Web Site Infrastructure and Drupal Linuxjournal 网站经典文章翻译,原文地址: Large-S ...