Библиотека multiprocessing
предоставляет слушателям и клиентам , которые обертывают сокеты и позволяют передавать произвольные объекты python.
Ваш сервер мог слушать получать объекты python:
from multiprocessing.connection import Listener
address = ('localhost', 6000) # family is deduced to be 'AF_INET'
listener = Listener(address, authkey='secret password')
conn = listener.accept()
print 'connection accepted from', listener.last_accepted
while True:
msg = conn.recv()
# do something with msg
if msg == 'close':
conn.close()
break
listener.close()
Ваш клиент может отправлять команды как объекты:
from multiprocessing.connection import Client
address = ('localhost', 6000)
conn = Client(address, authkey='secret password')
conn.send('close')
# can also send arbitrary objects:
# conn.send(['a', 2.5, None, int, sum])
conn.close()
В JavaScript null
является объектом. Есть еще одно значение для несуществующих вещей - undefined
. Модель DOM возвращает null
почти во всех случаях, когда не удается найти какую-либо структуру в документе, но в самом JavaScript undefined
используется значение.
Во-вторых, нет, существует не прямой эквивалент. Если вы действительно хотите проверить наличие null
, выполните:
if (yourvar === null) // Does not execute if yourvar is `undefined`
Если вы хотите проверить, существует ли переменная, это можно сделать только с помощью try
/ catch
, поскольку typeof
будет обрабатывать необъявленную переменную и переменную, объявленную со значением undefined
, как эквивалент.
Но, чтобы проверить, объявлена ли переменная и не undefined
:
if (typeof yourvar !== 'undefined') // Any scope
Остерегайтесь, это чушь, потому что может быть переменная с именем undefined
:
if (yourvar !== undefined)
Если вы хотите знать, является ли член существует независимо, но не Неважно, какое у нее значение:
if ('membername' in object) // With inheritance
if (object.hasOwnProperty('membername')) // Without inheritance
Если вы хотите узнать, истинна ли переменная :
if (yourvar)
Я часто делал:
function doSomething(variable)
{
var undef;
if(variable === undef)
{
alert('Hey moron, define this bad boy.');
}
}
Еще более простой и более сокращенный вариант:
if (!x) {
//Undefined
}
ИЛИ
if (typeof x !== "undefined") {
//Do something since x is defined.
}
В JavaScript null
является объектом. Есть еще одно значение для несуществующих вещей: undefined
. Модель DOM возвращает null
почти во всех случаях, когда не удается найти какую-либо структуру в документе, но в самом JavaScript используется значение undefined
.
Во-вторых, нет, существует не прямой эквивалент. Если вы действительно хотите проверить наличие null
, выполните:
if (yourvar === null) // Does not execute if yourvar is `undefined`
Если вы хотите проверить, существует ли переменная, это можно сделать только с помощью попробуйте
/ catch
, поскольку typeof
будет рассматривать необъявленную переменную и переменную, объявленную со значением undefined
, как эквивалент.
Но, чтобы проверить, объявлена ли переменная и не undefined
:
if (typeof yourvar !== 'undefined') // Any scope
Осторожно,
Единственный способ проверить, является ли переменная неопределенной
, - это выполнить следующие действия. Помните, что undefined - это объект в JavaScript.
if (typeof someVar === 'undefined') {
// Your variable is undefined
}
Некоторые другие решения в этом потоке заставят вас поверить в то, что переменная не определена, даже если она была определена (например, со значением NULL или 0).