去发现生活中的美好,记录生活中的点点滴滴

JS零星汇总

html admin 413℃

js数组添加元素

var a = [];// 创建数组
a.push(1); // 添加到最后
a.unshift(); // 添加到第一个位置

js打开一个新的html页面,并且写入html代码

var w = window.open("about:blank");
w.document.charset ="UTF-8";    
w.document.write('html代码'); 

js 判断数组中是否包含元素

例1:
var arr = [1,2,3];
indexarr.indexOf(1);//返回0
indexarr.indexOf(5);//返回-1
例2:
 var arr=["A","B","C"]; 
 if(arr.toString().indexOf("B")>-1) 
    return true;//存在
 else
    return false; //不存在

js跳出each循环

return false 跳出循环,return true 进入下一个循环

js跳出for循环

break;直接退出for这个循环。这个循环将不再被执行!
continue;直接跳出本次for循环。下次继续执行。

点击图片等文件下载不让浏览器显示

jquery

QQ截图20180417101231

function download(src) {
    var $a = $("").attr("href", src).attr("download", "img.png");
    $a[0].click();
}

js

function download(src) {
    var $a = document.createElement('a');
    $a.setAttribute("href", src);
    $a.setAttribute("download", "");

    var evObj = document.createEvent('MouseEvents');
    evObj.initMouseEvent( 'click', true, true, window, 0, 0, 0, 0, 0, false, false, true, false, 0, null);
    $a.dispatchEvent(evObj);
}

 
number,string类型都是基本类型,而基本类型存放在栈区,访问时按值访问,赋值是按照普通方式赋值;对象和数组是通过引用来赋值的,所以改变a的同时b也会跟着改变
a数组赋值给一个新的数组:

var a = [6,7];
var b = a;
a[1] = 8;
console.log(b);//输出为[6,8]
所以,不想用引用赋值,则需要:
var b = [].concat(a);
这个时候,b就不是a的引用了,也就不会共用同一个存储区。

转载请注明:永盟博客 » JS零星汇总

喜欢 (1)