คำถามติดแท็ก null

Null หมายถึง * nothing * หรือ * unknown * ขึ้นอยู่กับบริบท โปรดใช้แท็ก "sql-null" สำหรับคำถามเฉพาะของ SQL

12
เหตุใดจึงมีค่า "null" ใน JavaScript
ใน JavaScript มีสองค่าซึ่งโดยทั่วไปจะบอกว่า 'ฉันไม่อยู่ - และundefinednull คุณสมบัติที่โปรแกรมเมอร์ไม่ได้กำหนดอะไรจะเป็นundefinedแต่เพื่อให้คุณสมบัตินั้นกลายเป็นคุณสมบัติnullนั้นnullจะต้องถูกกำหนดให้กับคุณสมบัตินั้นอย่างชัดเจน ฉันเคยคิดว่ามีความจำเป็นnullเพราะundefinedเป็นค่าดั้งเดิมและnullวัตถุ มันไม่ได้ถึงแม้ว่าtypeof nullจะให้ผลผลิต'object': ที่จริงทั้งสองมีค่าดั้งเดิม - ซึ่งหมายความว่าค่าundefinedมิได้nullสามารถกลับมาจากการทำงานของผู้สร้างขณะที่ทั้งสองจะถูกแปลงเป็นวัตถุที่ว่างเปล่า (หนึ่งที่มีการโยนข้อผิดพลาดความล้มเหลวจงประกาศในการก่อสร้าง) ทั้งคู่ยังประเมินfalseในบริบทบูลีน ข้อแตกต่างที่แท้จริงที่ฉันสามารถคิดเป็นที่หนึ่งประเมินเพื่อNaNการอื่น ๆ เพื่อ0ในบริบทที่เป็นตัวเลข เหตุใดจึงมีทั้งสองอย่างundefinedและnullเพียงแค่สร้างความสับสนให้โปรแกรมเมอร์ที่ตรวจสอบไม่ถูกต้องnullเมื่อพยายามค้นหาว่ามีการตั้งค่าคุณสมบัติหรือไม่? สิ่งที่อยากทราบคือหากใครมีตัวอย่างที่สมเหตุสมผลที่จำเป็นต้องใช้nullที่ไม่สามารถแสดงundefinedแทนได้ ดังนั้นฉันทามติทั่วไปดูเหมือนจะundefinedหมายความว่า 'ไม่มีคุณสมบัติดังกล่าว' ในขณะที่nullหมายถึง 'ทรัพย์สินนั้นมีอยู่จริง แต่ไม่มีค่า' ฉันสามารถใช้ชีวิตแบบนั้นได้หากการใช้งาน JavaScript บังคับใช้พฤติกรรมนี้จริง - แต่undefinedเป็นค่าดั้งเดิมที่ถูกต้องอย่างสมบูรณ์ดังนั้นจึงสามารถกำหนดให้กับคุณสมบัติที่มีอยู่เพื่อทำลายสัญญานี้ได้อย่างง่ายดาย ดังนั้นหากคุณต้องการตรวจสอบว่ามีคุณสมบัติอยู่หรือไม่คุณต้องใช้ตัวinดำเนินการหรือhasOwnProperty()อย่างไรก็ตาม อีกครั้ง: การใช้ประโยชน์สำหรับค่าที่แยกต่างหากสำหรับundefinedและnullคืออะไร ฉันใช้จริงundefinedเมื่อต้องการยกเลิกการตั้งค่าคุณสมบัติที่ไม่ได้ใช้งานอีกต่อไป แต่ไม่ต้องการdeleteใช้ ฉันควรใช้nullแทนหรือไม่?

7
null + true เป็นสตริงอย่างไร
เนื่องจากtrueไม่ใช่ประเภทnull + trueสตริงสตริงเป็นอย่างไร string s = true; //Cannot implicitly convert type 'bool' to 'string' bool b = null + true; //Cannot implicitly convert type 'string' to 'bool' เหตุผลเบื้องหลังนี้คืออะไร?
112 c#  .net  string  null  types 

7
จะลบองค์ประกอบว่างทั้งหมดภายในรายการทั่วไปได้อย่างไร?
มีวิธีการเริ่มต้นที่กำหนดไว้ใน. Net สำหรับ C # เพื่อลบองค์ประกอบทั้งหมดภายในรายการซึ่งเป็นnull? List<EmailParameterClass> parameterList = new List<EmailParameterClass>{param1, param2, param3...}; สมมติว่าพารามิเตอร์บางตัวคือnull; ฉันไม่สามารถทราบล่วงหน้าและต้องการลบออกจากรายการของฉันเพื่อให้มีเฉพาะพารามิเตอร์ที่ไม่เป็นโมฆะ
112 c#  list  null  element 

10
ฟรี (ptr) ที่ ptr เป็นหน่วยความจำ NULL เสียหายหรือไม่
ในทางทฤษฎีฉันสามารถพูดได้ว่า free(ptr); free(ptr); เป็นความเสียหายของหน่วยความจำเนื่องจากเรากำลังปลดปล่อยหน่วยความจำที่ได้รับการปลดปล่อยไปแล้ว แต่ถ้า free(ptr); ptr=NULL; free(ptr); เนื่องจากระบบปฏิบัติการจะทำงานในลักษณะที่ไม่ได้กำหนดฉันจึงไม่สามารถรับการวิเคราะห์ทางทฤษฎีที่แท้จริงเกี่ยวกับสิ่งที่เกิดขึ้นได้ ไม่ว่าฉันกำลังทำอะไรอยู่นี้หน่วยความจำเสียหายหรือไม่? การพ้นตัวชี้ NULL ถูกต้องหรือไม่?

7
เหตุใดจึงมีความแตกต่างในการตรวจสอบค่า null เทียบกับค่าใน VB.NET และ C #
ในVB.NETสิ่งนี้เกิดขึ้น: Dim x As System.Nullable(Of Decimal) = Nothing Dim y As System.Nullable(Of Decimal) = Nothing y = 5 If x <> y Then Console.WriteLine("true") Else Console.WriteLine("false") '' <-- I got this. Why? End If แต่ใน C # สิ่งนี้เกิดขึ้น: decimal? x = default(decimal?); decimal? y = default(decimal?); y = 5; if …
110 c#  vb.net  .net-4.0  null 

11
ไม่สามารถแคสต์ออบเจ็กต์ประเภท "System.DBNull" เพื่อพิมพ์ "System.String"
ฉันได้รับข้อผิดพลาดข้างต้นในแอปของฉัน นี่คือรหัสเดิม public string GetCustomerNumber(Guid id) { string accountNumber = (string)DBSqlHelperFactory.ExecuteScalar(connectionStringSplendidmyApp, CommandType.StoredProcedure, "GetCustomerNumber", new SqlParameter("@id", id)); return accountNumber.ToString(); } ฉันแทนที่ด้วย public string GetCustomerNumber(Guid id) { object accountNumber = (object)DBSqlHelperFactory.ExecuteScalar(connectionStringSplendidCRM, CommandType.StoredProcedure, "spx_GetCustomerNumber", new SqlParameter("@id", id)); if (accountNumber is System.DBNull) { return string.Empty; } else { return accountNumber.ToString(); } } มีวิธีที่ดีกว่านี้หรือไม่?
109 c#  asp.net  database  null 


11
วิธีการโทรถ้าไม่ว่างใน C #
เป็นไปได้ไหมที่จะย่อข้อความนี้ให้สั้นลง? if (obj != null) obj.SomeMethod(); เพราะฉันเขียนเรื่องนี้บ่อยมากและมันค่อนข้างน่ารำคาญ สิ่งเดียวที่ฉันคิดได้คือการใช้รูปแบบNull Objectแต่นั่นไม่ใช่สิ่งที่ฉันสามารถทำได้ทุกครั้งและไม่ใช่วิธีแก้ปัญหาในการทำให้ไวยากรณ์สั้นลง และปัญหาที่คล้ายกันกับเหตุการณ์ที่ public event Func<string> MyEvent; แล้วเรียกใช้ if (MyEvent != null) MyEvent.Invoke();
107 c#  null 

5
MongoDB: วิธีค้นหาระเบียนที่ฟิลด์เป็นโมฆะหรือไม่ได้ตั้งค่า?
ฉันมีEmailเอกสารที่มีช่องsent_atวันที่: { 'sent_at': Date( 1336776254000 ) } หากEmailยังไม่ได้ส่งsent_atฟิลด์นี้จะเป็นโมฆะหรือไม่มีอยู่ ฉันต้องการรับจำนวนการส่ง / ไม่ได้ส่งEmailsทั้งหมด ฉันติดขัดที่พยายามหาวิธีที่ถูกต้องในการค้นหาข้อมูลนี้ ฉันคิดว่านี่เป็นวิธีที่ถูกต้องในการนับจำนวนการส่ง: db.emails.count({sent_at: {$ne: null}}) แต่ฉันจะนับคนที่ไม่ได้ส่งได้อย่างไร?

9
ฉันจะแทรกค่า NULL โดยใช้ PDO ได้อย่างไร
ฉันใช้รหัสนี้และฉันก็ไม่รู้สึกหงุดหงิด: try { $dbh = new PDO('mysql:dbname=' . DB . ';host=' . HOST, USER, PASS); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $dbh->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'"); } catch(PDOException $e) { ... } $stmt = $dbh->prepare('INSERT INTO table(v1, v2, ...) VALUES(:v1, :v2, ...)'); $stmt->bindParam(':v1', PDO::PARAM_NULL); // --> Here's the problem PDO::PARAM_NULL, null, '', ทั้งหมดล้มเหลวและโยนข้อผิดพลาดนี้: ข้อผิดพลาดร้ายแรง : …
105 php  mysql  pdo  null  sql-insert 

20
PHP json_decode () คืนค่า NULL ด้วย JSON ที่ถูกต้อง?
ฉันมีวัตถุ JSON นี้เก็บไว้ในไฟล์ข้อความธรรมดา: { "MySQL": { "Server": "(server)", "Username": "(user)", "Password": "(pwd)", "DatabaseName": "(dbname)" }, "Ftp": { "Server": "(server)", "Username": "(user)", "Password": "(pwd)", "RootFolder": "(rf)" }, "BasePath": "../../bin/", "NotesAppPath": "notas", "SearchAppPath": "buscar", "BaseUrl": "http:\/\/montemaiztusitio.com.ar", "InitialExtensions": [ "nem.mysqlhandler", "nem.string", "nem.colour", "nem.filesystem", "nem.rss", "nem.date", "nem.template", "nem.media", "nem.measuring", "nem.weather", "nem.currency" ], "MediaPath": "media", …
105 php  json  null 

4
อ้างอิงโมฆะได้หรือไม่?
รหัสชิ้นนี้ถูกต้อง (และพฤติกรรมที่กำหนด) หรือไม่ int &nullReference = *(int*)0; ทั้งสองกรัม ++ ++ และเสียงดังกราวรวบรวมไว้โดยไม่มีการเตือนใด ๆ แม้เมื่อใช้-Wall, -Wextra, -std=c++98, -pedantic, -Weffc++... แน่นอนว่าการอ้างอิงไม่ได้เป็นโมฆะเนื่องจากไม่สามารถเข้าถึงได้ (หมายถึงการยกเลิกการอ้างอิงตัวชี้ค่าว่าง) แต่เราสามารถตรวจสอบได้ว่าเป็นโมฆะหรือไม่โดยการตรวจสอบที่อยู่: if( & nullReference == 0 ) // null reference

12
วิธีการทำ ToString สำหรับวัตถุว่าง
มีวิธีง่ายๆในการดำเนินการดังต่อไปนี้: String s = myObj == null ? "" : myObj.ToString(); ฉันรู้ว่าฉันสามารถทำสิ่งต่อไปนี้ได้ แต่ฉันคิดว่ามันเป็นการแฮ็กจริงๆ: String s = "" + myObj; มันจะดีมากถ้า Convert ToString () มีโอเวอร์โหลดที่เหมาะสมสำหรับสิ่งนี้
104 c#  .net  string  object  null 

14
มีเหตุผลอะไรที่ต้องใช้ null แทน undefined ใน JavaScript?
ฉันได้รับการเขียน JavaScript nullสำหรับค่อนข้างนานในขณะนี้และฉันไม่เคยมีเหตุผลที่จะใช้งาน ดูเหมือนว่าundefinedจะดีกว่าเสมอและตอบสนองวัตถุประสงค์เดียวกันทางโปรแกรม มีเหตุผลเชิงปฏิบัติอะไรบ้างที่ควรใช้nullแทนundefined?

30
IBOutlet เป็นศูนย์ แต่เชื่อมต่อกับสตอรี่บอร์ด Swift
ใช้ Swift 1.1 และ Xcode 6.2 ฉันมี UIStoryboard ที่มีUIViewControllerคลาสย่อยที่เป็นเอกพจน์แบบกำหนดเอง ในนั้นฉันมีการ@IBOutletเชื่อมต่อประเภทUIViewจากคอนโทรลเลอร์นั้นไปยังUIView คลาสย่อยบนกระดานเรื่องราว ฉันยังมีร้านค้าที่คล้ายกันสำหรับมุมมองย่อยของมุมมองนั้น ดูรูปก. แต่ในขณะรันคุณสมบัติเหล่านี้เป็นศูนย์ (รูปที่ B) แม้ว่าฉันจะมั่นใจได้ว่าฉันได้เชื่อมต่อร้านค้าใน Interface Builder แล้ว ความคิด : เป็นไปได้ไหมว่าเนื่องจากฉันใช้คลาสย่อยของคลาสย่อยบางอย่างทำให้การเริ่มต้นทำงานผิดปกติ ฉันไม่ได้ลบล้างตัวเริ่มต้นใด ๆ awakeFromNib: ไม่ได้รับการเรียกด้วยเหตุผลบางประการ บางทีอาจไม่ได้เชื่อมต่อกับมุมมองย่อยในมุมมองย่อย สิ่งที่ฉันได้ลอง: @IBOutletประเภทรายการที่ตรงกันและสตอรี่บอร์ด (แทนที่จะเป็นUIView) การลบคุณสมบัติและเต้ารับและเพิ่มเข้าไปใหม่ รูป A * รูป B * รหัสที่ถูกปิดบังFigure Aคือ: @IBOutlet private var annotationOptionsView: UIView! @IBOutlet private var arrivingLeavingSwitch: UISegmentedControl! …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.