По моему мнению, проще использовать numpy
:
import numpy as np
list1=[1,2,3]
list2=[4,5,6]
np.add(list1,list2)
Результаты:
Подробный параметр информацию, проверьте здесь: numpy.add
function getMeta(url){
$("<img/>",{
load : function(){
alert(this.width+' '+this.height);
},
src : url
});
}
function getMeta(url){
var img = new Image();
img.onload = function(){
alert( this.width+' '+ this.height );
};
img.src = url;
}
function getMeta(url){
var img = new Image();
img.addEventListener("load", function(){
alert( this.naturalWidth +' '+ this.naturalHeight );
});
img.src = url;
}
Используйте приведенное выше просто как: getMeta( "http://example.com/img.jpg" );
https://developer.mozilla.org/en/docs/Web/API/HTMLImageElement
ES6: Используя async/await
, вы можете сделать это последовательно-способом
async function getMeta(url) {
return new Promise((resolve, reject) => {
let img = new Image();
img.onload = () => resolve(img);
img.onerror = reject;
img.src = url;
});
}
И вы можете использовать его следующим образом (что почти идентично коду в вашем вопросе (я добавляю await
ключевое слово и изменить переменную end
на img
и изменить var
на let
ключевое слово)
let img = await getMeta("http://shijitht.files.wordpress.com/2010/08/github.png");
let w = img.width;
let h = img.height;
alert(w+'width'+h+'height');
помните, что если вы вызываете getMeta
в некоторой функции, он должен иметь async
в его определении.
Переменные w
и h
в функции img.onload
находятся не в той же области, что и в функции getMeta()
. Один из способов сделать это:
Fiddle: http://jsfiddle.net/ppanagi/28UES/2/
function getMeta(varA, varB) {
if (typeof varB !== 'undefined') {
alert(varA + ' width ' + varB + ' height');
} else {
var img = new Image();
img.src = varA;
img.onload = getMeta(this.width, this.height);
}
}
getMeta("http://snook.ca/files/mootools_83_snookca.png");